Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Definición de Requisitos
ASLO-SGAEWMS
2811/02/2022
Tabla de contenido
1 Introducción.........................................................................................55
1.1 Metas de negocio.................................................................................................55
2 Requisitos.............................................................................................56
2.1 Requisitos funcionales.........................................................................................56
Exportar: Exportará las preslecciones a un fichero en formato .csv, con todas las
columnas.......................................................................................................112
SGAEWMS-RF-210-A – Inventarios............................................................................209
SGAEWMS-RF-309-A – Traspasos.............................................................................229
El eWMS gestionará las variaciones de stock moviendo las unidades ubicadas desde el
contenedor genérico de la OT si las hubiese, desde los contenedores de los
2.1.15 Automatización..................................................................................................311
SGAEWMS-RR-001-A.Tiempos de respuesta.............................................................321
SGAEWMS-RS-001-A.Integración SSO......................................................................321
SGAEWMS-RS-002-A.Control de acceso...................................................................321
Trazabilidad.................................................................................................................322
Internacionalización.....................................................................................................323
SGAEWMS-RI-200-A – Internacionalización...............................................................323
SGAEWMS-RI-300-A – Despliegue.............................................................................323
Algoritmos.................................................................................................................... 323
SGAEWMS-RI-400-A – Algoritmos..............................................................................324
Navegación formularios...............................................................................................324
Validado
Aprobado
CONTROL DE CAMBIOS
Modificado SGAEWMS-RF-106-A –
Seguimiento de pedidos.
Modificado SGAEWMS-RF-211-A –
Notificación de todas unidades
asignadas.
1.09 09/03/2016 FernandoPB
Modificado SGAEWMS-RF-208-A –
Consulta de stock por estado
ModificadoSGAEWMS-RF-107-A para
añadir el filtro de descarte de pedidos sin
1.11 30/03/2016 JorgeJCV etiqueta de transportista en la pantalla
de preselecciones.
Modificado SGAEWMS-RF-206-A –
1.14 06/05/2016 FernandoPB Sincronización de stock
Modificado SGAEWMS-RF-210-A –
Inventarios
Modificado SGAEWMS-RF-206-A –
Sincronización de stock
Añadido SGAEWMS-RF-016-B –
Tratamiento de campañas en órdenes
Modificado SGAEWMS-RF-107-A –
Creación de preselecciones. Añadido
nuevo filtro “Pedidos con necesidad de
impresión ticket/factura/mensaje regalo”.
Añadido SGAEWMS-RF-101.1-A –
Líneas de pedido.
Añadido SGAEWMS-RF-213-B –
Órdenes de trabajo de inventario RFID
Añadido SGAEWMS-RF-126-A –
Pedidos por estado
Añadido SGAEWMS-RF-127-A-
Recepción y procesado de factura A4.
JorgeJCV Modificado SGAEWMS-RF-107-A-
1.16 26/7/2016 Creación de preselecciones. Se añade
nuevo filtro de “Descarte de Pedidos sin
etiquetas de devolución”
SGAEWMS-RF-304.1-B – Gestión de
1.18 25/08/2016 FernandoPB movimiento de prendas entre bultos de
reparto.
Añadido SGAEWMS-RF-001.1-B -
1.19 13/09/2016 FernandoPB Confirmación de la recepción de un
envío
Añadido SGAEWMS-RF-128-A –
Consolidación de pedidos.
Añadido SGAEWMS-RF-117.1-A –
Gestión de stock y resolución
1.20 03/10/2016 FernandoPB/JorgeJCV
Modificado SGAEWMS-RF-127-A –
Recepción y procesado de factura A4
SGAEWMS-RF-117-A – Gestión de
incidencias
SGAEWMS-RF-200-A –Mantenimiento
del stock
Añadido requisito:
SGAEWMS-RF-101.2-A – Plataformas
de venta externa
SGAEWMS-RF-110-A – Creación de
oleadas.
SGAEWMS-RF-122-A – Cierre de
expediciones.
SGAEWMS-RF-117-A – Gestión de
incidencias
Añadidos requisitos:
SGAEWMS-RF-117.3-B – Declaración
masiva de inventarios insuficientes
SGAEWMS-RF-601-A – Transferencias
de picking como origen
SGAEWMS-RF-601.1-A – Seguimiento
de picking transfer
SGAEWMS-RF-601.1.1-C – Detalle de
picking transfer
SGAEWMS-RF-601.3-A – Preselección
de picking transfer
SGAEWMS-RF-601.4-B – Seguimiento
de preselecciones de picking transfer
SGAEWMS-RF-601.5-A – Creación de
órdenes de trabajo
SGAEWMS-RF-601.6 – A -
Procedimiento para generar oleadas
Nuevos requisitos:
SGAEWMS-RF-602-A – Transferencias
de picking como destino
SGAEWMS-RF-602.1.1-B – Notificación
de cambio de estado de pedidos de
picking transfer en almacén destino
SGAEWMS-RF-602.2-A – Tipos de
pedido de picking transfer en almacén
destino
SGAEWMS-RF-602.3-A – Operativas en
el almacén para recibir picking transfers
y configuraciones
1.24 22/02/2017 JorgeJCV SGAEWMS-RF-602.4-A – Seguimiento
de pedidos con transferencia de picking
en destino
SGAEWMS-RF-602.5-A – Seguimiento
de transferencias de picking en destino
SGAEWMS-RF-602.6-A – Órdenes de
trabajo de recepción de transferencias
de picking
SGAEWMS-RF-602.6.1-A – Mercancía
de transferencia de picking a mesa de
empaquetado
SGAEWMS-RF-602.6.3-A – Ubicación
en el stock del almacén
SGAEWMS-RF-602.7-A – Asignación de
unidades a pedidos
1. SGAEWMS-RF-107.1-A -
Creación de preselecciones
desde fichero
Modificación requisitos:
2. SGAEWMS-RF-602.1.1-B –
Añadidos requisitos:
SGAEWMS-RF-602.6.2-B –
Clasificación en muro
SGAEWMS-RF-017-B –Tratamiento de
SKUs no teóricos en órdenes de
recepción
SGAEWMS-RF-602.6.1-A – Mercancía
de transferencia de picking a mesa de
empaquetado
SGAEWMS-RF-602.3-A – Operativas en
el almacén para recibir picking transfers
y configuraciones
SGAEWMS-RF-701-A – Visualizar
entradas de consumibles
SGAEWMS-RF-701.1-A – Añadir
entradas de consumibles
SGAEWMS-RF-701.2-A – Eliminar
entradas de consumibles
SGAEWMS-RF-701.3-A – Importar
entradas de consumibles
SGAEWMS-RF-701.4-A – Confirmar
entradas de consumibles
SGAEWMS-RF-702-A – Visualizar
salidas de consumibles
SGAEWMS-RF-702.1-A – Gestionar
salidas automáticas de consumibles
SGAEWMS-RF-702.2-A – Gestionar
SGAEWMS-RF-703-A – Visualizar
configuración de consumos por
operaciones
SGAEWMS-RF-703.1-A – Nueva
configuración de consumos por
operaciones
SGAEWMS-RF-703.2-A – Editar
configuración de consumos por
operaciones
SGAEWMS-RF-703.3-A – Eliminar
configuración de consumos por
operaciones
SGAEWMS-RF-704-A – Visualizar
configuración de consumos fijos
SGAEWMS-RF-704.1-A – Nueva
configuración de consumos fijos
SGAEWMS-RF-704.2-A – Editar
configuración de consumibles fijos
SGAEWMS-RF-704.3-A – Eliminar
configuración de consumibles fijos
SGAEWMS-RF-705-A – Informe de
stock
SGAEWMS-RF-706 -A – Informe de
consumo de stock
SGAEWMS-RF-707 -C – Alertas de
control de stock de consumibles
SGAEWMS-RF-708 -A – Histórico de
stock
SGAEWMS-RF-007.1-B – Cambio
estado stock de bultos recibidos
SGAEWMS-RF-008.1-B – Recepción de
bultos tras fin de recepción
SGAEWMS-RF-200.1-A –
Modificados requisitos:
SGAEWMS-RF-001-A – Recepción de
envíos
SGAEWMS-RF-001.1-B – Confirmación
de la recepción de un envío
Añadido requisito:
SGAEWMS-RF-105.1-A – Cancelación
de pedido con razón
1.29 28/09/2017 FernandoPB/JorgeJCV
SGAEWMS-RF-105.2-A – Cancelación
diferida de pedidos
Modificado requisito:
SGAEWMS-RF-107-A – Creación de
preselecciones
Añadido requisito:
1.30 28/09/2017 FernandoPB
SGAEWMS-RF-117.2.1-A –
Mantenimiento de pedidos cancelados
por incidencia
SGAEWMS-RF-110-A – Creación de
oleadas
SGAEWMS-RF-112-A – Creación de
cuadrantes
Añadidos requisitos:
SGAEWMS-RF-306-A – Reparto a
localización
SGAEWMS-RF-307.1-A – Creación de
órdenes de reparto a localización
SGAEWMS-RF-307.2-A – Generación
de olas
SGAEWMS-RF-307.3-A – Cierre de
órdenes
Modificado:
SGAEWMS-RF-602.8 – A. Estados de
las recepciones de picking transfer.
Añadidos:
SGAEWMS-RF-604-A – Tratamiento de
Picking Transfer de origen tienda.
SGAEWMS-RF-604.1-A – Creación de
orden de trabajo de PT de tienda a
1.32 13/12/2017 FernandoPB Stock.
SGAEWMS-RF-604.2-A – Incremento
del teórico de una orden de PT de tienda
a Stock.
SGAEWMS-RF-604.3-A – Recepción de
bultos.
SGAEWMS-RF-604.4-A – Ubicación de
unidades y asignación a pedidos.
SGAEWMS-RF-604.5-A – Cierre de
orden de PT de tienda a Stock.
SGAEWMS-RF-604.6 -A – Expiración de
PT de tienda a Stock.
Modificado:
SGAEWMS-RF-604.2-A – Incremento
del teórico de una orden de PT de tienda
1.33 20/12/2017 FernandoPB a Stock
SGAEWMS-RF-018 -A – Tratamiento de
devoluciones desde tienda
SGAEWMS-RF-018.1-A – Confirmación
de la recepción de una devolución de
tienda
SGAEWMS-RF-018.2-A – Estados de
una recepción de devoluciones de tienda
SGAEWMS-RF-018.3-A – Creación de
órdenes de recepción de devoluciones
de tienda
SGAEWMS-RF-018.4-A –
Procesamiento de las devoluciones de
tienda
SGAEWMS-RF-018.5-A – Cierre de la
orden de recepción de devoluciones de
tienda
SGAEWMS-RF-018.6-A – Cancelación
de devoluciones de tienda
1.34 09/02/2018 JorgeJCV
SGAEWMS-RF-018.7-A – Bolsa de
devoluciones de tienda
SGAEWMS-RF-018.8-A – Ubicación de
devoluciones de tienda
Modificados:
SGAEWMS-RF-001-A – Recepción de
envíos
SGAEWMS-RF-001.1-B – Confirmación
de la recepción de un envío
SGAEWMS-RF-008.1-B – Recepción de
bultos tras fin de recepción
SGAEWMS-RF-014-B – Procesamiento
de devoluciones online
SGAEWMS-RF-308.1-A – Creación de
SGAEWMS-RF-308.2-A – Generación
de olas
SGAEWMS-RF-308.3-A – Gestión de
tablas de reparto
SGAEWMS-RF-308.4-A – Cierre de
órdenes de reparto por totales
Añadido requisito:
Añadido requisito:
Añadido requisito:
SGAEWMS-RF-110.1-A – Restricciones
de creación de oleada
1.39 06/04/2018 AlejandroGOM/JorgeJCV
SGAEWMS-RF-103.1-A - Empaquetado
regalo a nivel línea de pedido
Modificado requisito:
SGAEWMS-RF-018.4-A –
Procesamiento de las devoluciones de
1.40 11/04/2018 JorgeJCV tienda
Modificados requisitos:
SGAEWMS-RF-117-A – Gestión de
incidencias
1.41 11/04/2018 RafaelAO
SGAEWMS-RF-129-A – Pedidos por
SKU
SGAEWMS-RF-501-A – Informe de
facturación
SGAEWMS-RF-107-A – Creación de
preselecciones
SGAEWMS-RF-001-A – Recepción de
envíos
SGAEWMS-RF-005-A – Creación de
órdenes de recepción
Modificados requisitos:
Modificados requisitos:
SGAEWMS-RF-001-A – Recepción de
envíos
SGAEWMS-RF-005-A – Creación de
órdenes de recepción
SGAEWMS-RF-018.3-A – Creación de
órdenes de recepción de devoluciones
1.44 26/04/2018 JorgeJCV de tienda
SGAEWMS-RF-018.4-A –
Procesamiento de las devoluciones de
tienda
SGAEWMS-RF-018.5-A – Cierre de la
orden de recepción de devoluciones de
tienda
Añadidos requisitos:
SGAEWMS-RF-110.2-A – Restricción de
capacidades por tienda en la creación de
oleadas
SGAEWMS-RF-130-A – Capacidades
por tienda
SGAEWMS-RF-130.2-A – Reseteo de
contadores de oleados y expedidos por
tienda
SGAEWMS-RF-130.3-A – Eliminación
de configuración de capacidades
SGAEWMS-RF-131.2-A – Estado de
pedido expedido diferido
SGAEWMS-RF-131.3-A –
Procesamiento de pedidos para
expedirlos de forma diferida
Modificados requisitos:
SGAEWMS-RF-100-A – Estados de un
pedido
SGAEWMS-RF-123-A – Seguimiento de
expediciones
Modificados requisitos:
SGAEWMS-RF-110.2-A – Restricción de
1.47 14/05/2018 RafaelAO capacidades por tienda en la creación de
oleadas
SGAEWMS-RF-132-A – Tamaños de
muro predefinidos a la hora de olear
SGAEWMS-RF-216-A – Órdenes de
control de inventario
SGAEWMS-RF-216.2-A – Registro de la
información en las órdenes de control de
stock
SGAEWMS-RF-309-A – Traspasos
SGAEWMS-RF-310-A – Órdenes de
traspaso
SGAEWMS-RF-310.1-A – Creación de
órdenes de traspaso
SGAEWMS-RF-310.2-A –
Procesamiento de las órdenes de
traspaso
SGAEWMS-RF-310.3-A – Cierre de
órdenes de traspaso
Modificados requisitos:
SGAEWMS-RF-110-A – Creación de
oleadas
SGAEWMS-RF-207-A – Órdenes de
movimiento interno
Modificado requisito:
SGAEWMS-RF-111-A – Estados de un
cuadrante
Añadidos requisitos:
SGAEWMS-RF-113.1 – Matrícula de
contenedor cuadrante
SGAEWMS-RF-113.2 – Pedidos en un
carro de contenedor cuadrante
SGAEWMS-RF-113.3 – Contenido de
los carros de contenedor cuadrante
SGAEWMS-RF-113.4 – Traspaso de
unidades en empaquetado
1.50 28/06/2018 davidob
SGAEWMS-RF-113.5 – Eliminación de
carros de clasificación
SGAEWMS-RF-113.6 – Inicio de
clasificación
SGAEWMS-RF-113.7 – Fin de
clasificación
SGAEWMS-RF-113.8 – Validar
clasificación
SGAEWMS-RF-113.9 – Reutilización de
carros
SGAEWMS-RF-113.10 – Fin
clasificación pedido individual
Modificado requisito:
SGAEWMS-RF-216.2-A – Registro de la
1.51 02/07/2018 RafaelAO información en las órdenes de control de
stock
SGAEWMS-RF-019-A – Cambio de
SGAEWMS-RF-133-A – Marketplace de
LaModa
Modificados requisitos:
SGAEWMS-RF-001-A – Recepción de
envíos
SGAEWMS-RF-005-A – Creación de
órdenes de recepción
Modificado requisito:
SGAEWMS-RF-110-A – Creación de
oleadas
SGAEWMS-RF-113.7 – Fin de
clasificación
Añadido requisito:
SGAEWMS-RF-113.11 – Estados de
cuadrante
SGAEWMS-RF-113.13 – Contenedor de
picking con matrícula
SGAEWMS-RF-113.13.1-A Picking a
matrícula
SGAEWMS-RF-113.13.2-A Reparto de
contenedor de picking
SGAEWMS-RF-113.13.3-A Eliminar
contenedor de picking
SGAEWMS-RF-113.13.1-A Solicitud de
información
SGAEWMS-RF-134-A – Optimización de
oleada
SGAEWMS-RF-134.1-A –Realizar
petición de optimización de oleada
SGAEWMS-RF-134.4-A – Escenario de
la optimización
SGAEWMS-RF-134.5-A – Watchdog de
petición de optimización
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
Modificados requisitos:
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-107-A – Creación de
preselecciones
SGAEWMS-RF-134.1-A –Realizar
petición de optimización de oleada
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
Añadido requisito:
SGAEWMS-RF-134.7-A – Configuración
de la oleada optimizada
SGAEWMS-RF-135.1-A – Cancelación
de pedidos no expedibles
SGAEWMS-RF-135.2-A – Información
en expediciones de pedidos no
expedibles
SGAEWMS-RF-135.3-A – Activación de
pedidos no expedibles
SGAEWMS-RF-135.4-A – Activación en
expediciones de pedidos no expedibles
SGAEWMS-RF-135.5-A – Visualización
de pedidos no expedibles
SGAEWMS-RF-113.13.5-A Notificar
contenedor de picking a instalación
destino
SGAEWMS-RF-112-A – Creación de
cuadrantes
SGAEWMS-RF-110-A – Creación de
oleadas
Añadido
SGAEWMS-RF-900-A – Reparto
cuadrante clasificación automatizada
SGAEWMS-RF-903-A Contenedores de
picking
SGAEWMS-RF-904-A Cancelación de
pedido
SGAEWMS-RF-904.1-B Cancelación de
tareas de picking y reservas
SGAEWMS-RF-904.2-B Cancelación
unidades clasificadas
SGAEWMS-RF-905-A Inducción de
contenedores
SGAEWMS-RF-905.1-B Déficit de
inducción
SGAEWMS-RF-905.3-A Inducción de
stock libre
SGAEWMS-RF-905.4-A Notificación de
reserva adicional
SGAEWMS-RF-905.5-A Inducción de
rechazo
SGAEWMS-RF-906-Notificación de
reservas incompletas
SGAEWMS-RF-907.1-B Evacuación de
pedidos cancelados
SGAEWMS-RF-908-A Empaquetar
pedido
SGAEWMS-RF-909-A Fin de
clasificación
SGAEWMS-RF-910-A Solicitud de
información de contenedor de reparto
SGAEWMS-RF-911-A Traspaso de
contenido de contenedores de prenda
colgada
SGAEWMS-RF-920-A Stock de
instalación
SGAEWMS-RF-922-A Sincronización de
stock
SGAEWMS-RF-923-A Variación de
stock en clasificador
SGAEWMS-RF-932-A Reserva de
unidades para movimiento de stock
unificado
SGAEWMS-RF-934-A Ubicación de
unidades
Añadidos requisitos:
SGAEWMS-RF-132.1-A – Opción de
oleada estricta en base a tamaño de
PTL
1.58 02/02/2019 YagoFP/JorgeJCV
SGAEWMS-RF-601.7.1 –A. Detalle de
seguimiento de órdenes de trabajo de
picking transfer
Modificado
SGAEWMS-RF-134.1-A –Realizar
petición de optimización de oleada
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
Nuevo
SGAEWMS-RI-103-A – Orden de
consumo de datos
1.61 06/02/2019 davidob Modificado
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
Modificados requisitos:
SGAEWMS-RF-123-A – Seguimiento de
expediciones
SGAEWMS-RF-123.1-A –
Documentación de órdenes de
expedición
Modificado:
Modificado
SGAEWMS-RF-112 – Creación de
cuadrante
1.64 24/02/2019 davidob Nuevo
SGAEWMS-RF-136-A – Tipo de
cuadrante
SGAEWMS-RF-107-A – Creación de
preselecciones
SGAEWMS-RF-112-A – Creación de
cuadrantes
Añadidos requisitos:
SGAEWMS-RF-106.1-A – Detalle de
pedido – Líneas de pedido
SGAEWMS-RF-137-A – Gestión de
pedidos con artículos personalizables
SGAEWMS-RF-138-A - Marcas de
pedido y de línea
SGAEWMS-RF-008.1-B – Recepción de
1.66 01/04/2019 FernandoPB bultos tras fin de recepción
SGAEWMS-RF-909-A Fin de
clasificación
1.67 04/04/2019 davidob
Modificado requisito:
SGAEWMS-RF-308.4-A – Cierre de
órdenes de reparto por totales
1.68 22/04/2019 FernandoPB Añadido requisito:
SGAEWMS-RF-308.4.1-A – Cierre en
áreas de reparto. Fin de clasificado.
Modificados requisitos:
SGAEWMS-RF-601.5-A – Creación de
órdenes de trabajo
SGAEWMS-RF-905.5-A Inducción de
rechazo
Modificados requisitos:
SGAEWMS-RF-501-A – Informe de
facturación
1.71 28/05/2019 JorgeJCV
SGAEWMS-RF-307.3-A – Cierre de
órdenes
MODIFICADOS
SGAEWMS-RF-113-A – Gestión de
cuadrantes
SGAEWMS-RF-134-A – Optimización de
oleada
SGAEWMS-RF-134.1-A –Realizar
petición de optimización de oleada
SGAEWMS-RF-134.3-A – Obtener
resultado de optimización de oleada
SGAEWMS-RF-134.4-C – Escenario de
1.72 06/06/2019 davidob la optimización
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
SGAEWMS-RF-134.7-A – Configuración
de la oleada optimizada
NUEVOS
SGAEWMS-RF-134.8-A – Cancelación
de optimización
SGAEWMS-RF-134.9-C – Renovación
de optimización
SGAEWMS-RF-313-A – Órdenes de
salida libre
SGAEWMS-RF-313.1-A – Órdenes de
duchado RFID
SGAEWMS-RF-313.3-A - Cerrar
órdenes de duchado
SGAEWMS-RF-313.4-A -
Procesamiento de una orden de
duchado RFID
SGAEWMS-RF-413.1-A – Solicitud
síncrona de cancelación de entradas
SGAEWMS-RF-413.2-A – Solicitud
síncrona de cancelación de salidas
SGAEWMS-RF-413.3-A – Solicitud
síncrona de estado de entradas
SGAEWMS-RF-413.4-A – Solicitud
síncrona de estado de salidas
SGAEWMS-RF-413.5-A – Confirmación
asíncrona de cancelación de entradas
SGAEWMS-RF-413.6-A – Confirmación
asíncrona de cancelación de salidas
SGAEWMS-RF-413.7-A – Solicitud
asíncrona de cancelación de entradas
SGAEWMS-RF-307.4-B – Cancelación
externa de repartos
SGAEWMS-RF-001.2-B – Detalle de
unidades por SKU para un envío
SGAEWMS-RF-001.3-B – Detalle de
unidades por bulto para un envío
SGAEWMS-RF-001.4-B – Detalle de
unidades por sección/tipo de mercancía
para un envío
SGAEWMS-RF-001.4.1-B –
Clasificación de productos por tipo
SGAEWMS-RF-001.4.2-B –
Configuración de artículos considerados
como tipo perfumería
Modificados requisitos:
SGAEWMS-RF-116-A – Empaquetado
SGAEWMS-RF-122-A – Cierre de
expediciones
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-003-B – Cancelación
externa de recepciones
SGAEWMS-RF-001-A – Recepción de
envíos
Añadidos requisitos:
SGAEWMS-RF-600.1-A – Tipos de
líneas de pedido
SGAEWMS-RF-600.2-A – Tipos de
pedido
SGAEWMS-RF-600.3-A – Tipos de
pedidos mixtos
SGAEWMS-RF-600.4-A – Tratamiento
1.75 14/08/2019 FernandoPB de pedidos mixtos
SGAEWMS-RF-605 – Tratamiento de
pedidos con líneas de preventa
Modificados requisitos:
SGAEWMS-RF-110-A – Creación de
oleadas
SGAEWMS-RF-112-A – Creación de
cuadrantes
Modificado:
SGAEWMS-RF-909-A Fin de
clasificación
WDO multicadena
Modificados:
SGAEWMS-RF-134-A – Optimización de
oleada
SGAEWMS-RF-134.1-A –Realizar
SGAEWMS-RF-134.4-C – Escenario de
la optimización
SGAEWMS-RF-134.5-A – Watchdog de
petición de optimización
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
SGAEWMS-RF-134.7-A – Configuración
de la oleada optimizada
SGAEWMS-RF-134.9-C – Renovación
de optimización
Nuevos:
SGAEWMS-RF-134.10-A – Optimización
en almacenes multicadena
Modificado
SGAEWMS-RF-112-A – Creación de
cuadrantes
SGAEWMS-RF-134.6-A – Creación de
la oleada optimizada
SGAEWMS-RF-140.1.1-A – Monitor de
oleadas automáticas
SGAEWMS-RF-140.1.2-B – WDO en
oleadas automáticas
SGAEWMS-RF-140.2-A – Seguimiento
de oleadas automáticas
SGAEWMS-RF-117.4-A – Incidencias de
PTL
SGAEWMS-RF-117.4.1-A – Lista de
picking para incidencias de PTL
Modificados requisitos:
SGAEWMS-RF-139-A – Gestión de
prioridades por defecto
SGAEWMS-RF-117-A – Gestión de
incidencias
SGAEWMS-RF-200.1-A –
Mantenimiento del stock – Ajuste de
stock agrupado
SGAEWMS-RF-202-A – Modificación de
un contenedor de stock
Modificados requisitos:
SGAEWMS-RF-014-B – Procesamiento
de devoluciones online
SGAEWMS-RF-201-A – Contenedores
de taras y de prendas bloqueadas
SGAEWMS-RF-007.1-B – Cambio
1.79 11/02/2020 JorgeJCV estado stock de bultos recibidos
SGAEWMS-RF-009-A – Pre-
clasificación, ubicación y auditoría de
prendas
SGAEWMS-RF-010-A – Cierre de
órdenes de recepción
SGAEWMS-RF-112-A – Creación de
1.80 17/02/2020 davidob/fernandopb cuadrantes
Modificados requisitos:
SGAEWMS-RF-105-A –Cancelación y
1.81 02/03/2020 JorgeJCV cancelación definitiva de pedidos
Modificados requisitos:
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-137-A – Gestión de
pedidos con artículos personalizables
SGAEWMS-RF-601.1-A – Seguimiento
de picking transfer
SGAEWMS-RF-601.3-A – Preselección
1.83 10/03/2020 YagoFP/JorgeJCV de picking transfer
SGAEWMS-RF-601.6 – A.
Procedimiento para generar oleadas
SGAEWMS-RF-107-A – Creación de
preselecciones
Añadidos requisitos:
SGAEWMS-RF-137.1-A – Marcas de
pedidos con artículos personalizables
Modificados requisitos:
SGAEWMS-RF-018.4-A –
1.84 30/03/2020 RafaelAO Procesamiento de las devoluciones de
tienda
Modificados requisitos:
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-107-A – Creación de
preselecciones
Modificados requisitos:
SGAEWMS-RF-307.3-A – Cierre de
órdenes
1.86 17/04/2020 Rafaelao Añadidos requisitos:
SGAEWMS-RF-307.5-B – Anulación de
órdenes de distribucion
SGAEWMS-RF-306-A – Reparto a
SGAEWMS-RF-307-A – Órdenes de
reparto a localización
SGAEWMS-RF-309-A – Traspasos
SGAEWMS-RF-310-A – Órdenes de
traspaso
SGAEWMS-RF-310.3-A – Cierre de
órdenes de traspaso
Añadidos requisitos:
Modificados requisitos:
Añadidos:
SGAEWMS-RF-116.1-A – Cambio de
tipo de caja de pedido
Modificados:
1.89 23/04/2020 davidob
SGAEWMS-RF-116-A – Empaquetado
de pedidos
SGAEWMS-RF-121-A – Gestión de
expediciones
SGAEWMS-RF-122-A – Cierre de
expediciones
SGAEWMS-RF-107.1-A
SGAEWMS-RF-108-A
SGAEWMS-RF-134.1-A
SGAEWMS-RF-134.6-A
Suprimidos
Modificados
SGAEWMS-RF-105-A –Cancelación y
cancelación definitiva de pedidos
SGAEWMS-RF-602.6.1-A – Mercancía
de transferencia de picking a mesa de
empaquetado
1.91 29/05/2020 davidob
Añadidos
SGAEWMS-RF-602.6.1.1-B –
Tratamiento de sobrante de
transferencia de picking a mesa de
empaquetado
Modificados requisitos:
Modificados requisitos:
SGAEWMS-RF-206-A – Sincronización
de stock
SGAEWMS-RF-208-A – Consulta de
stock por estado
SGAEWMS-RF-211-A – Notificación
de todas las unidades asignadas
SGAEWMS-RF-216-A – Órdenes de
control de inventario
SGAEWMS-RF-216.1-A – Crear
órdenes de trabajo de control de
inventario
SGAEWMS-RF-313.4-A -
Procesamiento de una orden de
duchado RFID
SGAEWMS-RF-601.7–A - Seguimiento
de órdenes de trabajo de picking
Añadidos requisitos:
SGAEWMS-RF-020-A – Notificación
de auditoría de entradas hacia
sistemas externos
SGAEWMS-RF-021-A – Notificación
de cambios de estado de órdenes de
entrada hacia sistemas externos
SGAEWMS-RF-022-A – Tipo de
Rotación de un bulto
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-205.1-B – Pantalla de
consulta de la nube de ajustes
SGAEWMS-RF-205.1-C – Pantalla de
consulta del histórico de la nube de
ajustes
SGAEWMS-RF-205.2-A – Orden de
trabajo de auditoría de bolsa de
ajustes
SGAEWMS-RF-205.3-A – Retención en
la bolsa de ajustes de las variaciones
de stock por unidades extra leídas
por RFID en bultos picados para
tienda
SGAEWMS-RF-205.3-B – Contar
posiciones por unidades faltantes
leídas por RFID en bultos picados
para tienda
SGAEWMS-RF-206.1-A – Información
de solicitudes de stock
SGAEWMS-RF-206.2-A – Validación
de mensajes con información de
stock
SGAEWMS-RF-208.1-A – Consulta de
stock por estado
SGAEWMS-RF-217-A – Información
de las posiciones de stock
SGAEWMS-RF-218-A – Rotación de
un artículo
SGAEWMS-RF-001.0-A – Tipos de
SGAEWMS-RF-308.5-A – Gestión de
faltas desde áreas de reparto en
repartos a localización.
SGAEWMS-RF-600.5-A – Bloqueo de
pedidos mixtos
SGAEWMS-RF-600.6-A – Desbloqueo
de pedidos mixtos
Modificados requisitos:
SGAEWMS-RF-101.1-A – Líneas de
pedido
SGAEWMS-RF-106-A – Seguimiento
de pedidos
SGAEWMS-RF-600.1-A – Tipos de
líneas de pedido
SGAEWMS-RF-600.2-A – Tipos de
pedido
SGAEWMS-RF-600.4-A – Tratamiento
de pedidos mixtos
Modificados requisitos:
SGAEWMS-RF-604-A – Tratamiento
de Picking Transfer de origen tienda.
SGAEWMS-RF-604.1-A – Creación de
orden de trabajo de PT de tienda a
Stock.
1.96 27/07/2020 Jorgejcv
SGAEWMS-RF-604.2-A – Incremento
del teórico de una orden de PT de
tienda a Stock
SGAEWMS-RF-604.3-A – Recepción
de bultos
Modificados requisitos:
SGAEWMS-RF-306-A – Reparto a
localización
SGAEWMS-RF-600.6-A – Desbloqueo de
pedidos mixtos
SGAEWMS-RF-602.2-A – Tipos de
pedidos mixtos en almacén destino
SGAEWMS-RF-602.3-A – Operativas en
el almacén para recibir picking
transfers y configuraciones
SGAEWMS-RF-602.6.4-A – Recepción
a PTL
SGAEWMS-RF-602.6.4.1-A – Creación
Recepción a PTL
SGAEWMS-RF-602.6.4.2-A –
Notificación a otros sistemas.
SGAEWMS-RF-602.6.4.3-A –
Generación de cuadrantes.
SGAEWMS-RF-602.6.4.4-A –
Recepción de bultos en órdenes de
Recepción a PTL
SGAEWMS-RF-602.6.4.5-A – Fin de
recepción de bultos.
SGAEWMS-RF-602.6.4.6-A – Gestión
de stock en la recepción a PTL.
SGAEWMS-RF-602.6.4.7-A – Cierre de
PTL para cuadrantes de tipo
Recepción a PTL
SGAEWMS-RF-602.6.4.8-A –
Ubicación de sobrante de Recepción
a PTL
Modificados requisitos:
SGAEWMS-RF-602.7-A – Asignación
de unidades a pedidos
SGAEWMS-RF-602.6.1.1-B –
Tratamiento de sobrante de
transferencia de picking a mesa de
SGAEWMS-RF-602.6-A – Órdenes de
trabajo de recepción de
transferencias de picking
Modificados requisitos:
SGAEWMS-RF-117-A – Gestión de
incidencias
SGAEWMS-RF-117.4-A – Incidencias
de PTL
1.100 14/08/2020 GuiomarRT/JorgeJCV SGAEWMS-RF-117.4.1-A – Lista de
picking para incidencias de PTL
Añadidos requisitos:
SGAEWMS-RF-117.4.1-A – Incidencias
de clasificación automatizada
Añadidos requisitos
SGAEWMS-RF-105.3-A –Cancelación y
cancelación diferida de pedidos de RBS
SGAEWMS-RF-936-A Creación de
cuadrante de faltas
Modificados requisitos
1.101 18/08/2020 YagoFP/DavidOB
SGAEWMS-RF-904-A Cancelación de
pedido
SGAEWMS-RF-907-A Evacuación de
pedidos clasificados
SGAEWMS-RF-907.1-B Evacuación de
pedidos cancelados
Modificado
Modificado requisito
SGAEWMS-RF-205.4-A – Ubicación de
sobrante
Modificados requisitos:
SGAEWMS-RF-101-A – Recepción de
pedidos
SGAEWMS-RF-104-A – Modificación de
pedidos
SGAEWMS-RF-124-A – Recepción y
procesado de etiquetas de pedido y de
devolución
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-207-A – Órdenes de
movimiento interno
Modificados requisitos:
Modificado requisito:
Modificado requisito:
SGAEWMS-RF-218-A – Rotación de un
Modificado requisito:
Modificados requisitos:
SGAEWMS-RF-117-A – Gestión de
incidencias
1.110 26/03/2021 DavidDFUE
SGAEWMS-RF-117.1-A – Gestión de
stock y resolución
Modificados requisito:
SGAEWMS-RF-307.4-B – Cancelación
externa de repartos
Modificado
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-122-A – Cierre de
expediciones
SGAEWMS-RF-307.3-A. Cierre de
órdenes
SGAEWMS-RF-308.4-A. Cierre de
órdenes de reparto por totales
SGAEWMS-RF-310.3-A. Cierre de
órdenes de traspaso
SGAEWMS-RF-601.8–A. Cierre de
orden de trabajo de picking transfer
SGAEWMS-RF-601.8.1–B. Pantalla
confirmación cierre de orden de trabajo
Modificados requisitos:
SGAEWMS-RF-205.2-A – Orden de
trabajo de auditoría de bolsa de ajustes
SGAEWMS-RF-218-A – Rotación de un
artículo
Modificados requisitos:
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-205.1-B – Pantalla de
consulta de la nube de ajustes
SGAEWMS-RF-205.1-C – Pantalla de
1.114 19/05/2021 DavidDFUE consulta del histórico de la nube de
ajustes
SGAEWMS-RF-205.3-A – Retención en
la bolsa de ajustes de las variaciones de
stock por unidades extra leídas por RFID
en bultos picados para tienda
SGAEWMS-RF-205.4-A – Ubicación de
sobrante
Añadidos requisitos:
SGAEWMS-RF-023-A – Gestión de
bultos multicelda
SGAEWMS-RF-023.1-A – – Recepción
de envíos con bultos multicelda
SGAEWMS-RF-023.3-A – Cierre de
órdenes de entrada con bultos
multicelda
SGAEWMS-RF-023.4-A – Mensajería
bultos multicelda
SGAEWMS-RF-206.3-A – Fragmentación
1.116 09/06/2021 JUANSTO
de mensajes de sincronización de stock
Añadido requisito:
SGAEWMS-RF-117.4.3-A – Conversión
a incidencias de faltante
Modificados requisitos:
1.118 28/06/2021 YagoFP/JorgeJCV
SGAEWMS-RF-117.4-A – Incidencias de
PTL
SGAEWMS-RF-117.4.2-A – Incidencias
de clasificación automatizada
Añadidos requisitos:
SGAEWMS-RF-219-A – Información de
las posiciones de stock automatizadas
Modificado requisito
Modificado requisito
Modificado requisito:
Modificado
SGAEWMS-RF-113.13.5-A Notificar
1.123 03/08/2021 davidob contenedor de picking a instalación
destino
Modificado requisito:
Modificado requisito:
Modificados requisitos:
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-206-A – Sincronización
de stock
SGAEWMS-RF-001.5-B – Detalle de
unidades por pedido
Modificados requisitos:
SGAEWMS-RF-005-A – Creación de
órdenes de recepción
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-600.1-A – Tipos de
líneas de pedido
SGAEWMS-RF-600.3-A – Tipos de
pedidos mixtos
SGAEWMS-RF-600.5-A – Bloqueo de
SGAEWMS-RF-602.3-A – Operativas en
el almacén para recibir picking transfers
y configuraciones
SGAEWMS-RF-602.6-A – Órdenes de
trabajo de recepción de transferencias
de picking
SGAEWMS-RF-602.6.4-A – Recepción a
PTL
SGAEWMS-RF-602.6.4.1-A – Creación
Recepción a PTL
SGAEWMS-RF-602.6.4.2-A –
Notificación a otros sistemas.
SGAEWMS-RF-602.6.4.3-A –
Generación de cuadrantes.
SGAEWMS-RF-602.6.4.4-A – Recepción
de bultos en órdenes de Recepción a
PTL
SGAEWMS-RF-602.6.4.6-A – Gestión
de stock en la recepción a PTL.
SGAEWMS-RF-602.6.4.8-A – Ubicación
de sobrante de Recepción a PTL y
picking.
SGAEWMS-RF-602.6.4.9-A – Cierre de
órdenes de Recepción a PTL
SGAEWMS-RF-313.5-A – Crear OT de
Salida Libre de Taras
SGAEWMS-RF-313.6-A – Cerrar OT de
Salida Libre de Taras
SGAEWMS-RF-313.7-A –
Procesamiento de una OT de Salida
Libre de Taras
Modificados requisitos:
SGAEWMS-RF-313-A – Órdenes de
salida libre
SGAEWMS-RF-313.3-A - Cerrar
órdenes de duchado
SGAEWMS-RF-602.1.1-B – Notificación
de cambio de estado de pedidos mixtos
en almacén destino
SGAEWMS-RF-602.6.1-A – Mercancía
de transferencia de picking a mesa de
empaquetado
Modificados requisitos:
SGAEWMS-RF-313-A – Órdenes de
salida libre
SGAEWMS-RF-313.5-A – Crear OT de
Salida Libre de Taras
1.130 15/10/2021 DavidDFUE
SGAEWMS-RF-313.6-A – Cerrar OT de
Salida Libre de Taras
SGAEWMS-RF-313.7-A –
Procesamiento de una OT de Salida
Libre de Taras
Añadidos requisitos:
SGAEWMS-RF-205.4.1-A – Bolsa de
unidades sobrantes pendientes de
ubicar
Modificados requisitos:
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-205.3-B – Contar
posiciones por unidades faltantes leídas
por RFID en bultos picados para tienda
SGAEWMS-RF-205.4-A – Ubicación de
sobrante
SGAEWMS-RF-602.6.1-A – Mercancía
de transferencia de picking a mesa de
empaquetado
Añadidos requisitos:
SGAEWMS-RF-142-A – Gestión de
pedidos sin etiquetar
Modificados requisitos:
1.133 03/01/2022 YagoFP
SGAEWMS-RF-120-A – Estados de una
caja de pedido
SGAEWMS-RF-100-A – Estados de un
pedido
SGAEWMS-RF-009.1-A – Ubicación de
prendas sin superar el teórico del bulto
SGAEWMS-RF-009.2-A – Ubicación de
prendas superando el teórico del bulto
SGAEWMS-RF-009.3-A – Retención en
la bolsa de ajustes de unidades
ubicadas por encima del teórico.
SGAEWMS-RF-010.1-A – Retención en
la bolsa de ajustes de unidades
ubicadas por debajo del teórico
SGAEWMS-RF-010.2-A – Procedimiento
de cierre de órdenes de recepción
SGAEWMS-RF-010.3-A – Monitor de
cierre de órdenes de recepción
SGAEWMS-RF-205.1.1-A – Ajustes
negativos retenidos en la nube de
ajustes
SGAEWMS-RF-205.5-A – Retención en
la bolsa de ajustes por ubicación de
entradas con discrepancias con respecto
al teórico
SGAEWMS-RF-220-A – Orden de
trabajo de auditoría de entradas sobre
bolsa de ajustes
Modificados requisitos:
SGAEWMS-RF-007.1-B – Cambio
estado stock de bultos recibidos
SGAEWMS-RF-009-A – Pre-
clasificación, ubicación y auditoría de
SGAEWMS-RF-020-A – Notificación de
auditoría de entradas hacia sistemas
externos
SGAEWMS-RF-205.1-A – Nube de
ajustes
SGAEWMS-RF-205.1-B – Pantalla de
consulta de la nube de ajustes
SGAEWMS-RF-205.1-C – Pantalla de
consulta del histórico de la nube de
ajustes
SGAEWMS-RF-206-A – Sincronización
de stock
SGAEWMS-RF-216-A – Órdenes de
control de inventario
Añadidos requisitos:
SGAEWMS-RF-216.3-A – Órdenes de
trabajo de Consolidación Rotativa
Modificados requisitos:
1.135 04/02/2022 DavidDFUE
SGAEWMS-RF-216-A – Órdenes de
control de inventario
Modificados requisitos:
SGAEWMS-RF-140.1-A – Gestión de
oleadas automáticas
SGAEWMS-RF-140.2-A – Seguimiento
de oleadas automáticas
SGAEWMS-RF-101.4-A – Recepción de
información extra de pedido
SGAEWMS-RF-106-A – Seguimiento de
pedidos
SGAEWMS-RF-107-A – Creación de
preselecciones
GLOSARIO
Artículo Modelo/calidad
Sección Las tiendas pueden tener una o varias secciones: señora, caballero y
niño.
Tipo/modelo/calidad/color/talla/almacén/campaña/año
Línea de distribución Cantidad a clasificar de una referencia para una tienda / sección y
aparte, dentro de un reparto.
Asimismo es objeto de este documento el describir el contexto general, el contexto operativo y las
metas globales técnicas y de negocio que conforman el ambiente en el que se implantarán dichos
requisitos.
Pre-confirmación de recepción de
SGAEWMS-RF-007-A
mercancía
Documentación de órdenes de
SGAEWMS-RF-123.1-A
expedición
SGAEWMS-RF-210-A Inventarios
SGAEWMS-RF-309-A Traspasos
Actualización de la dirección de un
SGAEWMS-RF-403-A
pedido
Se definirá envío como un conjunto de prendas que se envía desde un centro de distribución (u otras
fuentes) a un almacén de eCommerce para su posterior almacenamiento y para poder cubrir la
demanda de pedidos online de clientes que se traten desde dicho almacén.
EWMS recibirá la notificación de un envío desde un sistema externo (EAI). Al recibirla, el sistema
persistirá toda la información relacionada con la recepción de la mercancía, esto es, código de envío,
origen del envío, fecha en la que la mercancía salió del origen, bultos que se incluyen en el envío y para
cada uno de ellos los SKU’s y cantidad teórica que contienen.
Además del código de envío, y solo en caso de venir notificado, se comprobará el sistema origen del
envío, pasando éste a ser también parte de la clave.
Existirán tres tipos de envíos, los que se recibirán con el mensaje AdvanceShippingNotice, que se
tratarán como envíos de centro de distribución, los que se recibirán con el mensaje
ShippingNotification que se tratarán como envíos de centro de distribución a localización (a consigna en
fase 1 para mejor entendimiento de la operativa cuando existen ambos) y los que se recibirán con el
mensaje StoreReturnNotification que se tratarán como envíos desde las tiendas hacia el almacén. El
tratamiento es idéntico para todos ellos.
Aparte de los filtros ya existentes, se incluirá un filtro por SKU que al ser usado eliminará del resultado
de la búsqueda aquellas recepciones que no incluyan el SKU (o parte del SKU) introducido. Además, se
ordenará en ascendente por SKU y por bulto en las pestañas de detalle al tener un envío seleccionado.
En las pestañas de detalle se muestra la información los envíos seleccionados siguiendo lo descrito en
los requisitos SGAEWMS-RF-001.2-B, SGAEWMS-RF-001.3-B y SGAEWMS-RF-001.4-B. Se añadirá una nueva
columna en dicha pestaña con título “CONFIRMADO RFID” (RFID CONFIRMED) que sólo aplicará para los
envíos de tipo “Devolución desde tienda”. En dichos tipos de envío, no se rellenará la columna de
unidades ubicadas por referencia, sino la nueva columna descrita cuando se complete el proceso de
confirmación RFID de los bultos recibidos.
El eWMS podrá recibir envíos de mercancía ya vendida para pedidos online desde CD1. Se deberá
además identificar qué tipo de pedidos están incluidos mediante una columna más en la pantalla de
MONOCOMPLETE_UNITARY Unitarios
COMPLETE Completos
PARTIAL Parciales.
MONOCOMPLETE Completos.
MULTICOMPLETE Completos multiorigen.
MONOPARTIAL Parciales.
MULTIPARTIAL Parciales multiorigen.
El estado del envío tras la recepción del mensaje de cara a los sistemas externos podrá ser:
Procesado: El envío se procesó, aunque sea con error en algún bulto o SKU.
Descartado: El envío no se procesó por errores en su procesamiento, ya sean de formato o
porque se haya incumplido el XSD o no pase las validaciones que correspondan.
Repetido: El envío se procesó pero en estado cancelado ya sea porque hay uno más reciente ya
recibido o porque uno con el mismo código está en curso en el almacén.
Además se enviará en este mensaje la información del envío que permita identificarlo y el estado de su
procesamiento, incluyendo las cajas y unidades procesadas.
En la pestaña de detalle de “Unidades por SKU” que se muestra al seleccionar uno o varios envíos, se
mostrarán las distintas referencias y la información del estado de dicha mercancía en el almacén. Para
cada referencia se mostrará el teórico notificado, lo recibido, lo preclasificado y lo ubicado. En caso de
seleccionarse más de un envío, se mostrará la suma de las cantidades para cada uno de los envíos.
En la pestaña de detalle de “Unidades por bulto” que se muestra al seleccionar uno o varios envíos, se
mostrarán los bultos y la información del estado de dicha mercancía en el almacén. Para cada bulto se
mostrará el código de envío, el código de envío PT (si aplica), el código de bulto, el estado del bulto, el
número de referencias, el teórico notificado, lo recibido, lo preclasificado y lo ubicado. En caso de
seleccionarse más de un envío, se mostrará la suma de las cantidades para cada uno de los envíos.
El sistema determinará el tipo de cada producto utilizando la información guardada en MAESTROS en las
tablas “PRODUCTO” y “TIPO_ARTICULO”:
Cualquier otro artículo que no encaje en alguno de los tipos anteriores será clasificado como tipo
“Otros”.
El sistema debe permitir que se configuren las familias/subfamilias que contienen los artículos de
perfumería para cada una de las distintas Cadenas. En caso de no existir esta configuración en el
sistema para alguna de las Cadenas, el sistema utilizará el criterio definido para perfumería en el
requisito SGAEWMS-RF-001.4.1-B.
Para cada pedido se mostrará el código de pedido, la matrícula del contenedor, el listado de SKU
asociados y las unidades teóricas informadas. En caso de seleccionarse más de un envío, se mostrará el
listado completo de pedidos asociados a ambos envíos.
El sistema podrá recibir una notificación de cancelación de un envío de mercancía. Esta notificación
podrá recibirse tanto de manera síncrona como asíncrona tal y como se describe en los requisitos
SGAEWMS-RF-413.3-A y SGAEWMS-RF-413.7-A respectivamente. Sólo se procederá a cancelar una
recepción si está en estado “Nuevo”. En tal caso, se pasará a estado “Cancelado”, el sistema impedirá
que se pueda asignar a una orden de trabajo. En caso de tratarse de una petición síncrona, se notificará
el éxito de la cancelación al sistema emisor de la petición (de manera síncrona también). Además, se
notificará de manera asíncrona a los sistemas interesados que la cancelación se ha realizado de manera
satisfactoria como se describe en el requisito SGAEWMS-RF-413.5-A.
En caso de recibir una petición de cancelación para una recepción en estado “Asignado”, “Cerrado” o
“Cancelado” se descartará la operación y, en caso de tratarse de una notificación síncrona, se alarmará
El sistema permitirá cancelar recepciones que se encuentren en estado “Nuevo”. En tal caso, se pasará
a estado “Cancelado”, el sistema impedirá que se pueda asignar a una orden de trabajo de entrada y no
se notificará ningún tipo de confirmación a ningún sistema externo.
Para poder comenzar a procesar una recepción en el almacén, deberá crearse una orden de trabajo de
recepción. Para ello, el sistema requerirá que se le asigne un nombre y al menos una recepción que no
esté asociada a otra orden de trabajo de recepción, es decir, que esté en estado “Nuevo”. Al crear la
orden de entrada, dicha recepción pasará a estar a estado “Asignado”.
En caso de que la orden de trabajo de entrada que se necesite crear sea de Repción a PTL, se mostrará
en el resumen de envío a seleccionar, el tipo de picking de los pedidos incluidos en el envío separados
por comas. Los tipos posibles serán:
Unitario
Monocompleto
Multicompleto
Monoparcial
Multiparcial
La orden de recepción se creará en estado “Abierto” y se notificará toda la información asociada a las
recepciones incluidas en la orden de entrada al módulo de almacenamiento, para poder comenzar su
procesamiento. Esta información incluye la descripción de la orden de entrada, así como todos los
bultos notificados en el envío y su contenido teórico. De esta forma, el sistema que gestiona el stock
podrá contrastar contra la información teórica todas las acciones llevadas a cabo para pre-clasificar y
ubicar la mercancía recibida.
Aparte de los filtros ya existentes, se incluirá un filtro por SKU que al ser usado eliminará del resultado
de la búsqueda aquellas órdenes de recepción que no incluyan el SKU (o parte del SKU) introducido.
Además, se ordenará en ascendente por SKU y por bulto en las pestañas de detalle al tener un envío
seleccionado.
Debe incluirse una nueva columna en la tabla en la que se muestra la información de todas las órdenes
de trabajo (entre las columnas de “Unidades ubicadas” y de marca de Pausado de las órdenes de
trabajo). Dicha columna tendrá por título “Uds. confirmadas RFID” (RFID Confirmed units) y sólo
aplicará en el caso de órdenes de trabajo de tipo “Devolución desde tienda”. Para ese tipo de envío, no
se rellenará la columna de unidades ubicadas, sino la nueva columna descrita cuando se complete el
proceso de confirmación RFID de los bultos recibidos en el almacén. Para el resto de tipo de órdenes de
trabajo no se rellenará la nueva columna y se seguirá usando la columna de “Unidades ubicadas”.
Del mismo modo, para la pestaña de detalle de Unidades por SKU, también se añadirá la columna
“CONFIRMADO RFID” (RFID CONFIRMED) que será usada de la misma forma y con el mismo tipo de
órdenes que ya se ha descrito.
La pestaña de detalla unidades por pedido debe mostrar el código de pedido, el listado de SKU
asociados, el teórico notificado, y las unidades ubicadas. Esta pestaña de unidades por pedido diferirá
de la definida en SGAEWMS-RF-001.5-B para el formulario de entradas en que no tendrá información del
bulto y se añadirá información de unidades ubicadas.
Cuando se realice la creación de una orden de trabajo de la que se disponga de teórico se comprobará
que los bultos en ella contenidos no existen como duplicados en ninguna orden previa en estado
diferente a cerrado/cancelado. De ser así se impediría la creación de esta orden hasta que se cerrasen
las anteriores que pudiesen contener bultos duplicados.
1. Abierto: Se ha creado la orden de trabajo de entrada con al menos una recepción asociada,
pero no se ha comenzado a trabajar con ella.
2. Activo: Se ha recibido del sistema que gestiona el stock del almacén al menos la recepción de
uno de los bultos, es decir, ha comenzado a tratarse la orden de recepción.
3. Cerrado: Se ha confirmado la recepción y ubicación de la mercancía tratada en la orden de
trabajo de entrada, por lo que su procesado está finalizado.
4. Cancelado: Ya sea porque se tratase de una recepción errónea o por otras causas, se ha
invalidado la orden de trabajo.
5. Finalizado: Se ha recibido toda la mercancía de las recepciones que conforman la orden de
recepción.
6. Auditando: Se ha revisado la diferencia entre la cantidad teórica de las recepciones de la orden
de trabajo y lo que ha sido ubicado.
Una vez creada la orden de trabajo de recepción, el primer paso será dar por recibidos todos los bultos
pertenecientes a la recepción asociada. Para ello, el módulo de almacenamiento solicitará el escaneo
de dichos bultos y notificará cada uno de dichos escaneos al sistema.
Por cada uno de estos escaneos de bultos, el sistema notificará la recepción del bulto en cuestión
asociado al código de envío correcto, haciendo saber de esta manera que el bulto se encuentra en el
almacén. Al mismo tiempo, el sistema actualizará la cantidad recibida para cada SKU, que en este caso
será igual a la cantidad teórica.
Es posible que aparezcan bultos que no se habían declarado en el teórico recibido, o que presenten
daños por causa de incidencias en el transporte. Para el primer caso, podrá declararse el bulto como
extra y su contenido será asociado a la orden de trabajo de entrada con la que se está trabajando,
aunque dicho bulto no será pre-confirmado. En caso de que un bulto esté dañado, podrá marcarse como
tal y así quedará registrado en el sistema, pudiéndose tratar la mercancía que contiene de igual forma.
Cada vez que el sistema reciba una notificación indicando que se ha ubicado una prenda por
parte del módulo de almacenamiento para un SKU y PO concreto (ver SGAEWMS-RF-009-A para
más detalles acerca del proceso de ubicación y la posible gestión de unidades por encima del
teórico), deberá comprobar si la cantidad que se está ubicando es menor o igual a la diferencia
entre la cantidad total recibida menos la ubicada para dicho SKU. Si es así, se enviará para la
cantidad que se está ubicando un ajuste de inventario de estado recibido a estado ubicado. Si
para un PO concreto se ubica un SKU por encima de la cantidad en estado recibido o un SKU que
no está presente (porque no pertenece al teórico del PO, por ejemplo), se enviarán ajustes de
inventario de tránsito a recibido y de recibido a ubicado para la cantidad notificada por parte
del módulo de almacenamiento. A modo de ejemplo, si para un PO y un SKU tenemos en estado
recibido 10 unidades, en estado ubicado 0 unidades y se ubican 15 unidades, se enviará un
ajuste de recibido a ubicado de 10 unidades y un ajuste de tránsito a recibido y de recibido a
ubicado de 5 unidades.
Si en el cierre de una orden de trabajo de entrada, existen SKU’s para los que la cantidad en
estado recibido es mayor que la cantidad en estado ubicado para dicho PO, deberán enviarse
(antes del propio cierre de la OT) ajustes negativos sobre el estado recibido para la diferencia
entre lo recibido menos lo ubicado.
Por último, debe tenerse en cuenta que si para un SKU, la cantidad en estado recibido es mayor
a la cantidad en estado ubicado, la diferencia entre ambas cantidades debe notificarse como
estado recibido ante una solicitud de sincronización de stock.
En el momento en que todos los bultos pertenecientes a un envío hayan sido recibidos, el sistema
generará de forma automática la notificación correspondiente mediante los mensajes
AdvanceShippingNoticePreConfirmationEnd, ShippingPreconfirmationEnd o
StoreReturnPreconfirmationEnd.
En la pantalla de órdenes de recepción existirá además un botón llamado Fin de recepción que
permitirá, para aquellos envíos para los cuales no se hubiesen recibido todos los bultos esperados, que
el usuario confirme el fin de recepción. Ante dicho evento, el sistema solicitará confirmación al usuario
mostrando una tabla con la siguiente información:
Además, se mostrará una tabla con los bultos pendientes de ser recibidos y el número de unidades de
cada uno de los bultos.
Cuando el usuario confirme el fin de recepción, el sistema procederá a la generación del mensaje
comentado anteriormente en este mismo requisito, incluyendo los bultos recibidos en la orden de
trabajo actual.
El sistema permitirá que se reciban bultos después de que se finalice la recepción de los mismos
para la OT según lo descrito en SGAEWMS-RF-008.
El comportamiento en este caso será que se volverá a activar el botón de fin de recepción de
bultos para que el operario pueda realizar nuevamente la acción de fin de recepción de bultos y
con ella el sistema generará un mensaje informando de los nuevos bultos recibidos hacia los
sistemas externos (AdvanceShippingNoticePreConfirmationEnd, ShippingPreconfirmationEnd o
StoreReturnPreconfirmationEnd) en el que se incluirán todos los bultos recibidos para la orden
de trabajo, por cada bulto recibido después del fin de recepción, pudiendo añadirse un flag
indicativo de si el bulto fue recibido previamente.
Esto podrá ocurrir un número indeterminado de veces para cada orden de trabajo, es decir, se
permitirán realizar hipotéticamente tantos eventos de fin de recepción de bulto como bultos
teóricos contenía la orden.
En cualquier caso, cuando se reciban bultos para una OT, después de haberse realizado su fin de
recepción de bultos se generarán alarmas diciendo “Bulto XXXX recibido para una orden en la
que ya se finalizó la recepción de bultos”, también se reflejará en logs.
Después de haber marcado los bultos de una recepción como recibidos, podrá pasarse a tratar el
contenido de todos ellos.
En una primera fase, podrán pre-clasificarrse las prendas de cada bulto para poder realizar la ubicación
de manera más eficiente. Para ello, el módulo de almacenamiento requerirá el escaneo de las prendas,
indicando el pasillo o la zona del stock en la que serán ubicadas. De esta forma, podrán separarse las
Una vez pre-clasificada una prenda, esta podrá ser ubicada en una posición del stock. Para ello, y
también a través del módulo de almacenamiento, se escaneará dicha prenda y se sugerirá una ubicación
para depositarla. Una vez realizada esta acción, el módulo de almacenamiento notificará, igual que
anteriormente, el SKU que se ha ubicado, la cantidad, la recepción a la que pertenece y la posición en
la que se ha dejado. Ante tal notificación, al igual que con la pre-clasificación, el sistema actualizará la
línea de recepción del SKU tratado, aumentando la cantidad ubicada y recibida (dependiendo de la
configuración). También se enviará a CIS un ajuste de inventario en el que se indicará para el SKU en
cuestión qué cantidad ha sido ubicada teniendo en cuenta lo descrito en SGAEWMS-RF-007.1-B – Cambio
estado stock de bultos recibidos para la gestión de las unidades recibidas. Las prendas que han sido
ubicadas serán puestas a la venta en la web, por lo que podrán recibirse pedidos que las requieran.
El sistema permitirá ubicar directamente una prenda sin pasar por la fase de pre-clasificación. En este
caso, deberá encargarse de enviar tanto la variación de stock de recepción de la prenda como la de
ubicación.
En cualquiera de los dos casos, será necesario, si procede, gestionar las posibles unidades ubicadas por
encima del teórico, como se indica a continuación.
Para los tipos de orden indicadas en dicho parámetro, cada vez que el sistema reciba una notificación
indicando que se ha ubicado una prenda por parte del módulo de almacenamiento para un SKU, bulto y
PO concretos (teniendo en cuenta MTOL y PROT), deberá comprobar si dicha ubicación supera el teórico
existente para ese SKU y bulto (el indicado en el PROT). Por tanto, será necesario mantener para qué
bulto se ha ubicado cada unidad del envío.
En caso de que la ubicación se haya realizado sin información de bulto disponible (por ejemplo, se ha
utilizado en el módulo de almacenamiento una opción de ubicación sin uso de bulto), el sistema deberá
asociar automáticamente un bulto a cada ubicación. La asociación se intentará hacer primero teniendo
en cuenta el teórico de los bultos. Una unidad ubicada para un determinado SKU se asociará al primer
bulto de la OT que se encuentre que tenga unidades de ese SKU en su teórico y que aún no hayan sido
asociadas con ninguna ubicación de la OT previamente. Si todas las unidades teóricas de ese SKU ya han
sidos asociadas a ubicaciones previas de dicha OT o no existe teórico de ese SKU en ningún bulto de la
OT, entonces:
- Se asociarán al primer bulto de la OT que se encuentre que tenga alguna unidad teórica de ese
SKU.
- Si no se encuentra ningún bulto que contenga en su teórico dicho SKU, se asociará al bulto con
el que tenga mayor similitud. Esto es, primero se elegirá el primer bulto que se encuentre cuya
cadena y sección sea la misma que las del SKU. De no haber ninguno, la prioridad para asignar a
un bulto será primero por cadena, luego por sección y, si no existe ninguno que cumpla con
estas condiciones, se seleccionará el primer bulto de la OT.
En cualquier momento del proceso de ubicación, podrá recibirse la corrección de una cantidad ubicada
(auditoría), ya sea porque se hizo de manera errónea o cualquier otra causa. En este caso, el sistema
deberá actualizar lo ubicado a la cantidad correcta y generar una variación de stock con respecto a la
cantidad inicial sobre el estado en el que se encuentra la prenda (recibida, ubicada, en taras…), para
hacer llegar dicha corrección a CIS, ya sea una cantidad positiva o negativa. Por ejemplo, si en un
principio se han ubicado 50 prendas de un SKU en una ubicación y se detecta que ha sido un error de
marcación de la cantidad, ya que realmente son 5 prendas, se enviará un ajuste negativo de -45 sobre
la cantidad disponible de la prenda en el stock. Este proceso de auditoría tendrá en cuenta la gestión
de los ajustes retenidos en la bolsa de ajustes (ver SGAEWMS-RF-009.3-A y SGAEWMS-RF-010.1-A para
más detalles).
Tanto para la preclasificación, la ubicación y la auditoría de prendas, siempre que se envíe un ajuste de
inventario a CIS, se indicará el código de envío asociado a la recepción que se está tratando.
Para la parte de la ubicación que sí supere el teórico en un valor superior al indicado por el parámetro
de configuración audit.by.differences.above.threshold (pueden ser todas las unidades o parte de ellas),
no se enviarán ajustes a los sistemas en ningún caso. Alternativamente, esos ajustes deberán quedar
retenidos en la bolsa de ajustes, siguiendo lo definido en SGAEWMS-RF-009.3-A. Adicionalmente, las
unidades que queden así retenidas, no deberán constar (por el momento) en el cómputo de unidades
ubicadas para la OT, bulto y SKU en cuestión.
Según lo definido en SGAEWMS-RF-009-A y SGAEWMS-RF-009.2-A, las unidades ubicadas por encima del
teórico del bulto correspondiente (superando el umbral permitido configurado), deberán ser retenidas
en la bolsa de ajustes.
Cada vez que suceda esto, deberá generarse un nuevo registro en la bolsa de ajustes (ver SGAEWMS-RF-
205.1-A para más información), con los siguientes valores:
Para cada uno de los ajustes así retenidos en la bolsa, EWMS solicitará a las áreas de almacenamiento
que correspondan que realicen auditoría del SKU involucrado en relación a la orden de trabajo
(Entrada) y bulto afectados. Estas solicitudes se realizarán (mensajes AUDI) y gestionarán tal y como se
explica en el requisito SGAEWMS-RF-205.1-A. En dichos mensajes deberá indicarse:
Una vez insertados los ajustes en la bolsa, éstos seguirán el flujo de vida propio de la bolsa de ajustes
(definido en el requisito SGAEWMS-RF-205.1-A): serán liberados (y, por tanto, comunicados a sistemas
externos) si se vence su tiempo máximo de duración, manualmente desde la interfaz, si se detecta
sobrerretención en una sincro de stock o si se terminan todas las tareas de auditoría en todas las áreas
de almacenamiento sin que ninguno de los posibles ajustes por auditoría intermedios lleguen a “matar”
(compensar) el ajuste retenido en cuestión.
En el caso de ajustes retenidos por ubicación de entradas por encima del teórico (los registros
correspondientes en la bolsa de ajustes habrán quedado asociados a una recepción concreta), los
InventoryAdjustment que se envíen cuando los ajustes retenidos se liberen (excepto si es por
compensación) deberán incluir la referencia a la recepción en cuestión (PoNumber), de igual manera
Cuando se confirma y se libera (sea por final de auditorías, sobrerretención en la sincro, por caducidad
o por liberación manual desde la interfaz) de la bolsa de ajustes un ajuste positivo asociado a una
ubicación de entradas por encima del teórico (ajuste con recepción y bulto asociados), adicionalmente
debe actualizarse la información de unidades ubicadas para esa orden de trabajo de recepción, bulto y
SKU. Se añadirá la cantidad que ha sido liberada, para que dicha información conste en la mensajería
de cierre de la orden de trabajo. En el caso de ajustes compensados (por auditoría con variación
negativa), no se actualizará ninguna información relativa a la orden de trabajo, bulto y SKU
correspondientes.
Una vez completadas las auditorías asociadas necesarias, si una unidad ubicada por encima del teórico
provenía de haber sido escaneada no ubicada, el ajuste de la bolsa se compensaría con el ajuste
negativo correspondiente a la auditoría de la posición donde fue teóricamente ubicada la unidad sin
haber sido físicamente ubicada. Sin embargo, si todo el stock de las posiciones afectadas es correcto (la
unidad extra es realmente una nueva unidad en el almacén), el ajuste positivo de la bolsa sería
correctamente liberado.
A continuación, se muestran ejemplos de cómo debería ser la evolución del stock (en cada uno de los
actores involucrados) en los casos descritos en el párrafo anterior:
- Después del put away (estableciendo para este ejemplo que se ha ubicado 1 unidad extra del
SKU Z, por encima del teórico para el bulto C de la OT de Entrada 1111. Y que existe abierta la
OT de Auditoría de entradas sobre la bolsa de ajustes con id 4231):
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 6001) y se
envía el correspondiente AUDI desde EWMS a MSR. Se indica:
OT: 1111
Tipo de auditoría: ‘A’
SKU: Z
Id Operación: 6001
OT Operación: 4321
Bulto: C
Tipo discrepancia ubicación: 1 (por encima del teórico)
- Después de auditar:
- Después del put away (estableciendo para este ejemplo que se ha ubicado 1 unidad extra del
SKU A, por encima del teórico para el bulto B de la OT de Entrada 1234. Y que existe abierta la
OT de Auditoría de entradas sobre la bolsa de ajustes con id 4231):
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 6000) y se
envía el correspondiente AUDI desde EWMS a MSR. Se indica:
OT: 1234
Tipo de auditoría: ‘A’
SKU: A
Id Operación: 6000
OT Operación: 4321
Bulto: B
Tipo discrepancia ubicación: 1 (por encima del teórico)
- Después de auditar:
Como todas las posiciones están OK, ningún MTOL enviado desde MSR supone variación
de stock.
Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 6000. Y es en ese momento cuando se produce la liberación del
ajuste retenido, que provoca el envío a los sistemas externos de un +1, con el código de
PO asociado.
Al finalizar el proceso de ubicación/auditoría de una orden de recepción, ésta deberá ser cerrada para
notificar a los sistemas externos (CIS, AS400, etc.) que se ha acabado de tratar los envíos asociados a la
orden de recepción.
Cuando se haga click en el botón ‘Cerrar’ para una OT de Entrada y se confirme el intento de cierre, el
comportamiento será distinto en función de si su tipo está incluido o no en los valores del parámetro de
configuración audit.by.differences.allowed.workorder.types. Si no lo estuviese, el cierre se trataría
normalmente, según el procedimiento que se detalla en SGAEWMS-RF-010.2-A. Si lo estuviese, primero
deberá comprobarse, para cada envío de la OT:
- Si existe algún SKU que se haya ubicado por debajo del teórico para alguno de los bultos
(teniendo en cuenta MTOL y PROT o, en su defecto, el cálculo de asignación de ubicación a
bulto del sistema, por criterio de similitud)
o En dicho caso, habrá que retener ajustes (negativos) en la bolsa de ajustes y solicitar
las auditorías asociadas a las áreas de almacenamiento correspondientes. Ver
SGAEWMS-RF-010.1-A para más detalles.
- Si existe algún ajuste retenido en la bolsa de ajustes asociado al envío en cuestión:
o Ajustes positivos por discrepancias por encima del teórico sucedidas durante el proceso
de ubicación de la orden y cuyas auditorías asociadas aún no han sido completadas.
o O también ajustes negativos que se hayan podido incluir justo en ese momento debido
al procesamiento de ubicación con discrepancias por debajo del teórico, mencionado en
el punto anterior.
Si en ese momento no quedan ajustes retenidos en la bolsa de ajustes (ni con unidades positivas, por
discrepancias por encima del teórico, ni con unidades negativas, por discrepancias por debajo del
teórico) asociados a ninguno de los envíos de la OT, la orden avanzará a estado “Cerrado”, siguiendo el
proceso explicado en SGAEWMS-RF-010.2-A.
En cualquier caso (tanto si la OT pasa a estado “Auditando” como si lo hace a “Cerrado”), el sistema
deberá también notificar (mediante mensaje FIND) al módulo de almacenamiento que la orden de
entrada se ha finalizado, para que se produzca el cierre en dicho sistema.
Como se indica en SGAEWMS-RF-010-A, cuando al intentar cerrar una orden cuyo tipo esté incluido en el
parámetro de configuración audit.by.differences.allowed.workorder.types existan SKUs con
discrepancia de ubicación por debajo del teórico para algún bulto, habrá que retener ajustes negativos
en la bolsa de ajustes y solicitar las auditorías asociadas.
Para ello, habrá que tener el cuenta el valor del parámetro de configuración
audit.by.differences.below.threshold, que indicará un límite permitido (comparación por menor o
igual) para las discrepancias por debajo del teórico. El valor por defecto será 0.
Cuando para un SKU y bulto se haya ubicado por debajo del teórico y la diferencia entre ambos valores
sea mayor que lo indicado en el parámetro de configuración audit.by.differences.below.threshold,
deberá considerarse como discrepancia por debajo del teórico.
Cada vez que suceda esto, deberá generarse un nuevo registro en la bolsa de ajustes (ver SGAEWMS-RF-
205.1-A para más información), con los siguientes valores:
Cada vez que se retenga un ajuste negativo por este motivo, deberá comprobarse también las unidades
recibidas para los correspondientes SKU, bulto y OT. Si existen pendientes unidades recibidas que aún
no han transitado a ubicadas (porque está activa la comunicación del estado recibido, con respecto a
las unidades teóricas, en la recepción de los bultos), será necesario mandar a los sistemas externos un
ajuste (asociado al PO correspondiente) negativo sobre el estado recibido para ese SKU y las unidades
En estos casos se haría uso de la retención de variaciones de stock en la bolsa de ajustes con valor
negativo (ver SGAEWMS-RF-205.1.1-A para más detalles).
Para cada uno de los ajustes así retenidos en la bolsa, EWMS solicitará a las áreas de almacenamiento
que correspondan que realicen auditoría del SKU involucrado en relación a la orden de trabajo
(Entrada) y bulto afectados. Estas solicitudes de auditoría se realizarán (mensajes AUDI) y gestionarán
tal y como se explica en los requisitos SGAEWMS-RF-205.1-A. En dichos mensajes deberá indicarse:
Una vez insertados los ajustes en la bolsa, éstos seguirán el flujo de vida propio de la bolsa de ajustes
para el caso de ajustes retenidos negativos (detallado en el requisito SGAEWMS-RF-205.1.1-A): podrán
confirmarse (sin ninguna comunicación adicional hacia los sistemas externos) si se vence su tiempo
máximo de duración, manualmente desde la interfaz o si se terminan todas las tareas de auditoría en
todas las áreas de almacenamiento sin que ninguno de los posibles ajustes por auditoría intermedios
lleguen a casar con el ajuste retenido negativo en cuestión.
En el caso de ajustes negativos retenidos por ubicación de entradas por debajo del teórico (los registros
correspondientes en la bolsa de ajustes habrán quedado asociados a una recepción concreta), los
InventoryAdjustment que se envíen cuando los ajustes casen y se compensen (ver SGAEWMS-RF-
205.1.1-A), que serán siempre para la parte positiva que desencadena la compensación del ajuste
previamente retenido, deberán incluir la referencia a la recepción en cuestión (PoNumber), de igual
manera que los ajustes que se van enviando normalmente durante el proceso de ubicación del envío. La
cantidad a comunicar con PoNumber asociado se limitará siempre, como mucho, a las unidades
retenidas en la bolsa de ajustes (la parte compensada). Es decir, si una auditoría causa una variación de
stock positiva compatible con un ajuste negativo retenido en la bolsa de ajustes, pero en un valor
absoluto mayor, se enviará una variación de stock positiva con PoNumber por el valor correspondiente
que estaba retenido en la bolsa y la cantidad restante se enviará sin indicar PoNumber ninguno. Por
ejemplo, ante un ajuste retenido de -2 unidades del SKU A asociadas al PO1 y una auditoría compatible
que causa una variación positiva de +5 unidades del SKU A, se notificarán +2 unidades asociadas al PO1
y +3 unidades sin PoNumber asociado.
Una vez completadas las auditorías asociadas necesarias, si una unidad ubicada por debajo del teórico
provenía de haber sido ubicada no escaneada, el ajuste de la bolsa se compensaría con el ajuste
positivo correspondiente a la auditoría de la posición donde fue físicamente ubicada la unidad sin haber
sido lógicamente ubicada (escaneada). Aunque en el caso de los ajustes negativos, estos nunca son
enviados a los sistemas externos (solo se envía la parte positiva que desencadena la compensación del
ajuste retenido). Sin embargo, si todo el stock de las posiciones afectadas es correcto (la unidad de
menos es realmente una unidad faltante en el envío y bulto en cuestión), el ajuste negativo de la bolsa
sería correctamente confirmado. Aunque, de nuevo, los ajustes negativos finalmente no son enviados a
los sistemas externos en ningún caso.
A continuación, se muestran ejemplos de cómo debería ser la evolución del stock (en cada uno de los
actores involucrados) en los casos descritos en el párrafo anterior:
- Después del put away (estableciendo para este ejemplo que se ha ubicado 1 unidad de
menos del SKU B, por debajo del teórico para el bulto P de la OT de Entrada 2222. Y que
existe abierta la OT de Auditoría de entradas sobre la bolsa de ajustes con id 4231):
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 7000) y
se envía el correspondiente AUDI desde el EWMS a MSR. Se indica:
OT: 2222
Tipo de auditoría: ‘A’
SKU: B
Id Operación: 7000
OT Operación: 4321
Bulto: P
Tipo discrepancia ubicación: 2 (por debajo del teórico)
- Después de auditar:
- Después del put away (estableciendo para este ejemplo que se ha ubicado 1 unidad de
menos del SKU C, por debajo del teórico para el bulto M de la OT de Entrada 2211. Y que
existe abierta la OT de Auditoría de entradas sobre la bolsa de ajustes con id 4231):
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 7001) y se
envía el correspondiente AUDI desde el EWMS a MSR. Se indica:
OT: 2211
Tipo de auditoría: ‘A’
SKU: C
Id Operación: 7001
OT Operación: 4321
Bulto: M
Tipo discrepancia ubicación: 2 (por debajo del teórico)
- Después de auditar:
o Como todas las posiciones están OK, ningún MTOL enviado desde MSR supone variación
de stock.
o Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 7001. Y es en ese momento cuando se produce la confirmación del
ajuste retenido. Como se trata de un ajuste negativo, no se envía nada a los sistemas
externos.
Cuando haya que proceder al cierre de una orden de recepción, se seguirá el siguiente proceso:
Se generará un mensaje que se enviará a los sistemas externos, el cual contendrá para cada envío, las
cantidades que se han recibido de las referencias por bulto. De esta forma, el centro de origen de la
mercancía podrá calcular las diferencias que existan con respecto al teórico.
Para generar dicho mensaje, el sistema asociará las cantidades ubicadas para cada línea de recepción
con el teórico de cada bulto que fue notificado en el teórico recibido. Si para un SKU se ha ubicado más
En dicho mensaje debe incluirse la información actualizada tras cualquier posible proceso de retención
de ajustes (positivos o negativos) y posteriores auditorías. Por tanto, deberá incluir la información que
se haya podido actualizar a posteriori de la ubicación en sí: confirmación de ajustes positivos retenidos
asociados a la ubicación con discrepancia por encima del teórico (ver SGAEWMS-RF-009.3-A) y
compensación de ajustes negativos retenidos asociados a la ubicación con discrepancia por debajo del
teórico (ver SGAEWMS-RF-010.1-A).
Para todas aquellas cantidades de SKU’s que se encuentran en estado recibido pero que no se han
llegado a ubicar, se enviará un ajuste de inventario negativo a CIS sobre el estado recibido (con el
código de envío asociado). De esta forma, no quedará nunca mercancía en estado recibido al cierre de
una orden de trabajo de entrada.
Para cada OT del tipo apropiado en estado “Auditando”, comprobará si existen ajustes retenidos en la
bolsa de ajustes (con unidades positivas, por discrepancias por encima del teórico, o con unidades
negativas, por discrepancias por debajo del teórico) asociados a alguno de los envíos de la orden.
En caso de que se cierre una orden de trabajo de entrada en estado “Abierto”, es decir, que no se ha
comenzado a procesar la mercancía asociada a dicha orden, el sistema lo tratará como una cancelación
El sistema se encargará de eliminar la información creada para dicha orden de entrada, como las líneas
de recepción o la asociación con las recepciones implicadas. Dichas recepciones deberán pasar a estado
“Nuevo”, estando disponibles de nuevo para ser asociadas a otras órdenes de entrada que se quieran
crear.
Por otro lado, se informará al módulo de almacenamiento para que dé por concluido el tratamiento de
dicha orden.
Las órdenes de trabajo de tipo entrada libre permiten la ubicación de mercancía recibida en el almacén
sin estar asociada a un envío concreto. La funcionalidad será la misma, sin embargo, será el sistema
quien genere un código de envío ficticio con el que deberá asociar todas las ubicaciones y ajustes de
stock que se notifiquen a CIS.
Para crear dicho tipo de orden, deberá especificarse una descripción y la cadena. Está acción provocará
que se notifique al módulo de almacenamiento la existencia de dicha orden, pudiendo asociar en dicho
módulo todas las operaciones que se lleven a cabo a la orden correcta.
El módulo de almacenamiento notificará al sistema cada vez que una prenda sea ubicada o se audite
alguna posición. Al igual que en las órdenes de entrada, el sistema notificará a CIS todas estas
variaciones indicando el código de envío asociado. Cuando se reciba la primera notificación por parte
del sistema de almacenamiento, el estado de la orden de entrada libre pasará a ser “Activo”.
Al finalizar la operativa, podrá cerrarse la orden de trabajo de entrada libre, notificando este hecho al
módulo de almacenamiento para impedir que se pueda seguir trabajando con ella. Una vez hecho esto,
el estado de la orden de entrada libre será “Cerrado”.
Tanto las órdenes de trabajo de recepción como las de entrada libre podrán ser pausadas desde el
sistema. Al realizar dicha acción, el sistema le notificará al módulo de almacenamiento que dichas
órdenes no serán seleccionables para trabajar con ellas. Del mismo modo, posteriormente podrán
volverse a activar, de nuevo notificándoselo al módulo de almacenamiento, para continuar con la
operación de dichas órdenes.
Para llevar a cabo el pausado/activación de las órdenes, éstas deberán estar en estado “ Abierto” o
“Activo”.
Tras el procesamiento de cada una de las prendas en esta aplicación de devoluciones se notificará al
SGA de las unidades recibidas para que puedan ser tratadas en el almacén mendiante el mensaje
EcommReturnItems. Estas unidades además pasarán a formar parte del stock administrativo por la
notificación que la aplicación generará a los sistemas administrativos.
Desde este momento el eWMS conocerá la existencia de este stock y lo incluirá dentro del stock que
está dentro del almacén en los procesos de sincronización.
El SGA no tratará información sobre el pedido que ha generado la devolución, ni la tienda con la que se
generará el movimiento administrativo ni ninguna otra información recibida en el mensaje
EcommReturnItems más allá de la Cadena, los SKUs y cantidades recibidos, así como la fecha de la
recepción del mensaje.
El SGA mantendrá estas unidades en el nuevo estado “Recibido RMA”, y podrán visualizarse desde las
pantallas de visualización de stock (en concreto será necesaria una nueva columna en el informe de
stock).
El eWMS será el único que conocerá las unidades recibidas en este estado, no notificando a MSR esta
información para su tratamiento.
Para la posterior ubicación de la mercancía el eWMS permitirá crear un nuevo tipo de orden de trabajo
llamado devolución online (nuevo tipo de orden de trabajo “DO” para la notificación a otros sistemas,
en el DEOT se notificará también la marca comercial). Solo podrá existir una orden de trabajo de este
tipo en estado Nuevo, Abierto, Activo o Pausado por cadena. Todas las variaciones de stock generadas
contra esta orden de trabajo se notificarán con reason RMA.
En la creación de la orden de trabajo se seleccionará la cadena y se añadirán como teórico todas las
unidades de esa cadena en estado Recibido RMA, además las unidades que se reciban mediante el
Si no hay ninguna orden de trabajo abierta para una cadena estas unidades se acumularán como teórico
de la siguiente orden de trabajo que se abra.
En el proceso de ubicación el SGA permitirá ubicar tanto unidades notificadas previamente por esta
aplicación como unidades no notificadas.
La ubicación se podrá realizar en diferentes estados de stock: disponible, taras, bloqueado, bloqueado
CIQ, En Operación, y para cada uno de ellos se notificará el movimiento desde el estado devolución
recibida al estado que corresponda, generándose en este caso los movimientos administrativos a través
de EAI.
Cuando se ubique alguna no preinformada enviará primero un alta de unidades en el nuevo estado
(envío de InventoryAdjustment positivo sobre el estado 91 con reason RMA) para posteriormente enviar
el cambio de estado al que corresponda, si la ubicación es de una unidad en estado Recibido RMA
simplemente se cambiará el estado al que corresponda (InventoryAdjustment 91 02, 91 05, 91
07 también con reason RMA).
En el cierre de la orden de trabajo el SGA notificará con ajustes negativos sobre el estado 91 para las
devoluciones pendientes de ubicar que no hayan sido realmente ubicadas, estos ajustes generarán
movimientos administrativos.
Los momentos temporales de estos cierres tendrán que ser acordados con cada uno de los centros.
Ejemplo ubicación:
El eWMS podrá ser configurado para acumular las variaciones de stock superiores al teórico de una
orden de trabajo de entrada hasta que la orden sea cerrada, momento en el que las variaciones se
enviarán automáticamente. Se podrán configurar los tipos de órdenes de entrada para los que se
acumulan las variaciones de stock superiores al teórico informado para esa orden.
Las órdenes de entrada libre, movimiento interno o las que como ellas no tengan teórico también
podrán ser configuradas de este modo y sólo se enviarían las variaciones positivas en el momento de
cerrar la orden o cuando ya haya habido una variación negativa que permita su envío sin sobrepasar
cero como cantidad en la orden.
Para dar soporte a esta nueva funcionalidad existirá un parámetro de configuración en BD llamado
WorkOrderTypes.StockVariationBiggerThanTheoretical que incluirá los identificadores de tipos de
órdenes de trabajo para los que se controlará el envío de estas variaciones. Si no existiese el parámetro
el sistema no acumulará variaciones superiores al teórico para ningún tipo de orden.
Las variaciones acumuladas han de tenerse en cuenta en las peticiones de sincronización de stock, en
este caso al tratarse obligatoriamente de variaciones positivas se descontarán de la foto de stock.
El sistema tendrá en cuenta las variaciones enviadas para esa orden para decidir si acumula o no una
nueva variación generada.
A continuación se describen algunos casos para ejemplificar el comportamiento del sistema suponiendo
que los tipos de orden de trabajo están configurados en todos los casos para acumular si es superior al
teórico.
CASO 1. Orden de trabajo de entrada de CD con Recepción asociada con teórico de 20 unidades del SKU
0/1234/123/123/12/V/2016.
Caso 2. Orden de devolución online con teórico del SKU 0/1111/222/333/44/I/2016 de 8 unidades.
Independientemente del tipo de orden de entrada el sistema tratará las campañas del siguiente modo:
1. Si un SKU tiene teórico para una campaña en una orden de trabajo y se realiza la ubicación en
cualquier campaña el eWMS entenderá que para la orden de trabajo se está ubicando en la
campaña del teórico y lo persistirá de tal modo. No importará que ya se haya ubicado la
cantidad teórica siempre se seguirá utilizando la misma campaña. Esto será así
independientemente de la campaña real en la que se ubicase y por lo tanto en la que el eWMS
tenga el stock.
2. Si se recibiese una auditoría sobre una orden de entrada se tratará del mismo modo, será la
campaña del teórico de la orden la que se tenga en cuenta para el SKU
3. Si un SKU no tiene teórico se utilizará siempre la campaña en la que reciba la primera
ubicación, no manteniéndose nunca un SKU en dos campañas diferentes para la misma orden de
trabajo.
Los SKUs que no pertenezcan al teórico de la orden de entrada, si esta lo tiene, deberán ser igualmente
tratados por el sistema.
El eWMS enviará generará siempre la variación de stock relacionada con la orden de trabajo, para todos
los tipos de orden de trabajo, y si corresponde lo informará así en la mensajería (es decir, siempre iría
con PTNumber, con PONumber o con lo que corresponda según el caso, independientemente de si
pertenece o no al teórico).
Según lo descrito si el SKU pertenece al teórico se modifica la línea de recepción existente y si el SKU
no pertenece al teórico se crea una nueva línea de recepción para el SKU en la campaña recibida como
ubicado.
Visualización
Al mostrar en la GUI las líneas de recepción el eWMS se comportará del siguiente modo:
Es decir, si un CD envía solo mercancía del centro de compra INDITEX, las líneas de recepción que por
ejemplo contengan artículos del centro de compra TEMPE o PERFU-N no se mostrarían. Estas líneas sí se
mostrarían si el CD origen está relacionado con los tres centros de compra (no se considerará aquí el
GCD de envío, si no el id_localizacion).
Nota: Las líneas que no se muestran en la GUI tampoco aparecerán en las discrepancias en el cierre
desde la GUI.
Cierre y notificación
Si el origen no es un CD se enviarán en la confirmación todas las líneas de recepción con sus unidades
positivas
Además será necesario enviar una variación de stock negativa relacionada con la OT para los centros de
compra no relacionados con el CD (es decir con el PTNumber, PONumber, …) por la cantidad total
ubicada y una variación positiva por la misma cantidad sin relacionarlas con la OT (es decir sin
PTNumber ni PONumber)
Las líneas de recepción que tengan unidades ubicadas negativas se considerarán como cero a todos los
efectos de visualización de GUI y cierre de OT, pero se mantendrán con cantidades negativas por si
posteriormente se corrigen con ubicaciones o auditorías positivas.
El proceso de devoluciones desde tienda en los almacenes Ecommerce se gestionará inicialmente desde
las aplicaciones presentes en las propias tiendas. Como resultado de dicho procesamiento, el sistema
recibirá un preaviso de los bultos (cassiopea de 24 dígitos), referencias y unidades que se recibirán
físicamente en el almacén. Dicho preaviso se realizará mediante el mensaje StoreReturnNotification.
Se recibirá este mensaje por cada bulto que se procese en la tienda aunque dicho mensaje permite
incluir más de un bulto. El estado de los bultos al ser persistidos en el sistema será “Nuevo”. El
tratamiento de este nuevo tipo de recepción de mercancía se incluye en el requisito SGAEWMS-RF-
001-A – Recepción de envíos.
Una vez procesado el preaviso, deberá confirmarse la recepción de dicha información a los sistemas
externos mediante el mensaje StoreReturnNotificationACK, según se describe en el requisito
SGAEWMS-RF-001.1-B – Confirmación de la recepción de un envío.
Desde la actual pantalla de órdenes de recepción se podrá crear un tipo nuevo de orden (Devolución de
tienda/Store return) indicando una descripción, centro de distribución destino y Cadena.
Al crear la orden, se le notificará dicha creación al módulo que gestionará las entradas (DEOT)
indicando el tipo de orden de devolución de tienda (RD) .
Si el bulto está en estado “Nuevo” (o en “Finalizado sin confirmar” como se describirá más adelante),
se enviará al módulo de entradas la información teórica de dicho bulto (mediante el mensaje ITCD). De
no encontrar información sobre el bulto requerido se contestará sin información teórica (ITCD vacío).
En caso de no tener información teórica del bulto porque este no existe, podrá configurarse el acceso a
un servicio web a través del cual se solicitará información de dicho bulto a un sistema externo
(SGE[pendiente saber la URL y el servicio]). Si dicho sistema devuelve información del bulto en cuestión
(la misma que vendría en un StoreReturnNotification), se notificará al módulo de entradas. Si no es así,
igual que anteriormente se contestará sin información teórica.
En caso de no encontrar información para un bulto, se creará una alarma indicando “Recibida solicitud
de información del bulto XXX para el cual no existe teórico”.
Una vez el módulo de entradas tiene la información teórica del bulto, solicitará destino para dicho
bulto, indicando además la orden de trabajo a la que lo asocia (con el mensaje SDCD). Ante dicha
solicitud, el sistema actuará de la siguiente forma:
Comprobará si la orden de trabajo a la que se asocia el bulto está en estado “Abierto” y de ser
así la pasará a estado “Activo”.
Enviará al módulo de entradas el destino del contenedor (con el mensaje IDCD). Por el
momento, dicho destino será siempre la instalación de almacenamiento.
Si no existe información del bulto para el que se solicita destino en ninguno de los envíos en
estado activo (“nuevo” o “asignado a orden de trabajo”), se creará una alarma indicando
“Recibida solicitud de alta para el bulto XXX no esperado”. IDCD vacío.
Asociará el envío del bulto a la orden de trabajo indicada y cambiará el estado de dicho envío a
“Asignado a orden de trabajo”. También cambiará el estado del propio bulto a “Recibido”.
Se enviarán las variaciones de stock correspondientes para pasar el contenido teórico del bulto
a estado “Recibido Tienda” (de 00->101).
Se enviará hacia los sistemas externos la notificación de fin de recepción de bultos de un envío
en caso de que se hubiesen recibido solicitudes de destino para todos los bultos que forman el
envío al que pertenece el bulto. Dicha notificación se realizará mediante el mensaje
StoreReturnPreconfirmationEnd. Este comportamiento se define en detalle en los requisitos
SGAEWMS-RF-008-B – Cierre de pre-confirmación de recepción de mercancía y SGAEWMS-RF-
008.1-B – Recepción de bultos tras fin de recepción.
Las unidades recibidas pasarán a formar parte del stock administrativo por la notificación que la
aplicación generará a dichos sistemas.
Desde este momento, el sistema conocerá la existencia de esta mercancía y la incluirá en el stock
perteneciente al almacén en los procesos de sincronización de stock.
Estas unidades se mantendrán en un nuevo estado “Recibido Tienda”, y podrán visualizarse desde las
pantallas de visualización de stock (en concreto será necesaria una nueva columna en el informe de
stock).
EWMS será el único que conocerá las unidades recibidas en este estado, no notificando al módulo de
almacenamiento esta información para su tratamiento.
Es posible que se reciban más solicitudes de destino (SDCD) para bultos que ya están en estado
“Recibido”. Ante dichas solicitudes, se contestará de la forma indicada ya anteriormente (con un IDCD)
Así mismo, mientras el bulto esté en este estado recibido, el módulo de entradas puede enviar una
solicitud de información del teórico de un bulto (SITD). En este caso, se responderá igualmente al RCP
con el teórico (ITCD) y no se cambiaría el estado del bulto, seguiría estando como recibido.
Una vez enviado el destino del bulto, el módulo de entradas realizará la confirmación del contenido del
bulto (con el mensaje COCD). El sistema enviará variaciones de stock para pasar de estado “Recibido
Tienda” a un nuevo estado “Recibido Devolución Tienda” (de 101->21) el contenido del bulto. Dicho
contenido puede variar con respecto al teórico que existía para dicho bulto (con respecto al último
SDCD recibido), por lo que sería necesario enviar primero ajustes sobre el estado “Recibido Tienda”
(101) para mover posteriormente al estado “Recibido Devolución Tienda” (21). Debe tenerse en cuenta
también que pueden aflorar unidades de nuevos SKU’s que no están en el teórico. El comportamiento
será el mismo y se realizarán los ajustes necesarios sobre el estado “Recibido Tienda” (101) y
posteriormente las unidades se moverán de estado “Recibido Tienda” (101) a “Recibido Devolución
Tienda” (21).
Las unidades confirmadas se mantendrán en el nuevo estado “Recibido Devolución Tienda”, y podrán
visualizarse desde las pantallas de visualización de stock (será de nuevo necesario crear una nueva
columna en el informe de stock).
EWMS será el único que conocerá las unidades recibidas en este estado, no notificando al módulo de
almacenamiento esta información para su tratamiento.
Al igual que para el estado “Recibido Tienda”, el sistema mantendrá esta mercancía en el estado
“Recibido Devolución Tienda” y la incluirá en el stock perteneciente al almacén en los procesos de
sincronización de stock.
Siguiendo este proceso, si en un momento dado todos los bultos de devoluciones de tienda están
confirmados, no debería haber ninguna unidad en estado “Recibido Tienda”. Todas ellas deberán estar
en “Recibido Devolución Tienda”.
En el mensaje de confirmación de bulto tratado, el módulo de entradas puede enviar información RFID
sobre el contenido del bulto. Dicha información debe ser persistida para ser enviada en el cierre de la
orden de recepción.
Con dicha confirmación, el estado del bulto cambiará a “Finalizado” y su contenido pasará a formar
parte de una nueva bolsa de stock que se define en detalle en el requisito SGAEWMS-RF-018.7-A –
Bolsa de devoluciones de tienda. Dicho contenido no cambiará de estado y seguirá siendo “Recibido
Devolución Tienda”.
Es posible que para un bulto en estado “Recibido” llegue una notificación de borrado desde el sistema
de gestión de entradas (REMC). En ese caso, será necesario cambiar el estado del bulto a un nuevo
estado “Finalizado sin confirmar”. Además, para las unidades de dicho bulto se enviarán las variaciones
de stock negativas necesarias sobre el estado “Recibido Tienda” (101). Dicha notificación de borrado se
ignorará para un bulto en cualquier otro estado.
Puede volver a recibirse para los bultos en estado “Finalizado sin confirmar” la petición de teórico por
parte de entradas (SIDT). En este caso el sistema cambiará el estado del bulto a “Nuevo” y contestará
con el teórico del bulto (ITCD), comenzando de nuevo el proceso para dicho bulto.
Notificará al módulo de entradas el cierre de la orden para que también se cierre en dicho
módulo (con el mensaje FIND)
Se actualizará el estado de la orden de trabajo a “Cerrado”.
Todos los envíos que estaban asociados a la orden de trabajo pasarán a estado “Cerrado”.
Se notificará a los sistemas externos la finalización del proceso mediante el mensaje
StoreReturnConfirmation para cada uno de los envíos asociados a la orden de trabajo. En dicho
mensaje se indicarán las cantidades confirmadas de cada referencia en cada bulto en estado
“Finalizado”, así como la información RFID en caso de existir.
Existirán dos posibles formas de cancelar envíos de devoluciones de tienda (no órdenes de recepción):
síncrona y asíncrona.
Existirá una nueva bolsa de SKU’s provenientes de devoluciones de tienda. Dicha bolsa contendrá todas
las unidades confirmadas de los bultos que se hayan tratado y su estado será “ Recibido Devolución
Tienda”.
Se podrán visualizar dichas referencias y unidades en la actual pantalla de “Devolución clientes” cuyo
nombre deberá ser modificado y pasará a ser “Devoluciones”. En dicha pantalla, aparte del actual filtro
de Cadena, deberá añadirse otro para seleccionar el tipo de devolución (online o tienda) con el que se
podrán ver por separado los dos tipos de devolución.
Deberá modificarse también dicha pantalla para añadir filtros de fecha Desde/Hasta. Esto implica que
para cada notificación, ya sea de devolución online o tienda, deberá pasarse a persistir la fecha en la
que se ha guardado en la bolsa. Con los filtros de fechas podrán seleccionarse rangos temporales a la
hora de mostrar las referencias incluidas en la bolsa.
Será necesario añadir dos nuevas columnas (entre las actuales columnas de Cadena y Referencia) en la
tabla de dicha pantalla para indicar el tipo de devolución de cada referencia y la fecha en la que se ha
persistido.
Se añadirá también el filtro de SKU para poder buscar por los atributos de la referencia (tipo producto,
modelo, calidad…).
Al eliminar las devoluciones de tienda seleccionadas, deberán enviarse los ajustes negativos
correspondientes (sobre el estado 21) hacia los sistemas externos y dichas devoluciones desaparecerán
de la bolsa.
Para ubicar la mercancía existente en la bolsa de devoluciones de tienda, se permitirá crear un nuevo
tipo de orden de trabajo desde la actual pantalla “Órdenes de devolución clientes”. Dicha pantalla
pasará a llamarse “Órdenes de devolución” y a la hora de crear una nueva orden, aparte de indicar la
descripción y la Cadena, deberá indicarse el tipo de devolución (online o tienda). La creación de dicha
orden será notificada al módulo de almacenamiento (se usará igualmente el tipo de orden de trabajo
“DO” para la notificación en el DEOT. Se seguirá notificando también la marca comercial). Al igual que
ya ocurría para las órdenes de trabajo de devoluciones online, sólo podrá existir una orden de trabajo
de tipo devolución de tienda en estado Nuevo, Abierto, Activo o Pausado por Cadena. Todas las
variaciones de stock generadas contra este tipo de orden de trabajo se notificarán con razón RDT.
Al crear una orden de trabajo de este tipo se añadirán como teórico todas las unidades de la Cadena
seleccionada en estado “Recibido Devolución Tienda” (deberá modificarse el comportamiento también
para las devoluciones online. Dichas unidades sólo deberán añadirse como teórico al crear una orden de
trabajo de devolución online). Además las unidades que se reciban en la bolsa de devoluciones de
tienda por la confirmación del contenido de los bultos en el módulo de entradas para la cadena
seleccionada, incrementarán también el teórico de la orden de trabajo mientras dicha orden no esté
cerrada.
Si no hay ninguna orden de trabajo abierta para una Cadena, estas unidades se acumularán como
teórico de la siguiente orden de trabajo que se abra para dicha Cadena.
Se permitirá ubicar unidades notificadas previamente como unidades notificadas y la ubicación se podrá
realizar en diferentes estados de stock (disponible, taras, bloqueado…). Al recibir la notificación de
ubicación desde el sistema de almacenamiento para este tipo de órdenes, se notificará el ajuste de
inventario a los sistemas externos desde el estado “Recibido Devolución Tienda” al estado que
corresponda.
Cuando se ubique una prenda no notificada previamente se enviará primero un alta de unidades en el
estado “Recibido Devolución Tienda” y posteriormente se notificará el cambio de estado al que
corresponda.
A la hora de crear una orden de trabajo para un envío de tipo “Entrada de CD”, el sistema deberá
comprobar que la campaña establecida para las referencias incluidas en dicho envío es la campaña
activa en ese momento.
Desde el módulo de almacenamiento, será posible marcar para auditar una determinada orden de
trabajo cuando se detecten diferencias entre el teórico de la entrada y lo ubicado. Cuando el módulo
coordinador reciba una notificación mediante el mensaje ADOT, indicando que una determinada orden
de trabajo se ha marcado para auditar, éste deberá cambiar el estado de la orden a “Auditando”. Este
nuevo estado funcionaría a todos los efectos como el estado “Activo”, pudiendo únicamente transitar al
estado “Cerrado” cuando se cierre en EWMS esta orden de trabajo.
La transición de una OT de entrada hacia este estado “Auditando” también podrá producirse, tal y
como se detalla en SGAEWMS-RF-010-A, cuando al intentar cerrar la OT quedan ajustes retenidos en la
bolsa de ajustes pendientes de auditar y asociados a alguno de los envíos de la OT.
Si para una orden de entrada en estado “Auditando”, se vuelve a recibir el mensaje ADOT, teniendo en
cuenta la configuración definida en SGAEWMS-RF-021-A – Notificación de cambios de estado de órdenes
de entrada hacia sistemas externos, no será necesario notificar nada hacia el exterior al no haberse
realizado ningún cambio en el estado de la orden.
El módulo coordinador podrá notificar a los sistemas externos los cambios de estado de las órdenes de
entrada para que éstos puedan realizar las comprobaciones o acciones que correspondan.
Para dar soporte a esta funcionalidad, en la configuración del sistema se establecerán dos parámetros
para determinar qué cambios de estados de las recepciones asociadas a una orden de trabajo serán
notificados hacia los sistemas externos:
Como se indica en el párrafo anterior, las zonas del almacén (y, por consiguiente, las posiciones de
stock) también tendrán un tipo de rotación, que se configurará y mantendrá en el módulo
correspondiente a las áreas de almacenamiento.
Los valores posibles para el tipo de rotación (tanto de bultos como de zonas o posiciones) son los
siguientes:
Cada vez que llegue una nueva Entrada al almacén, EWMS deberá calcular el tipo de rotación de cada
bulto. Este valor deberá ser comunicado a las áreas de almacenamiento (a cada una de las instancias
que correspondan) cuando se crea la Orden de Trabajo de Entrada. Esta comunicación se llevará a cabo
en el mensaje BUOT, utilizando un nuevo campo: Tipo de rotación.
Para realizar estos cálculos, EWMS necesitará conocer el tipo de rotación asociado a cada una de las
posiciones donde haya stock en el almacén. Para ello, las áreas de almacenamiento comunicarán esta
información mediante el nuevo mensaje IPOS (ver SGAEWMS-RF-217-A para más información).
Para determinar el tipo de rotación de un determinado bulto se calculará una puntuación (de 0 a 10),
basada en el stock actual, la demanda y la rotación de cada uno de sus artículos, y teniendo en cuenta
el objetivo de cubrir la demanda de los siguientes N y 2N días en zonas del tipo de rotación adecuado.
Uds Rotación Baja ( A )=min ( ( Demanda N N D ( A )−Stock Rotación Baja ( A ) ) , Uds Bulto ( A ))
- Con el conjunto completo de referencias del bulto (A, B … N) se calcula la puntuación media del
bulto (cada unidad de rotación baja vale 10 puntos, cada una de rotación media vale 5 puntos y
las de rotación alta valen 0 puntos):
Hay que tener en cuenta que todas las unidades de artículos de novedad (para los que no existe
rotación ni demanda calculadas) se valorarán con la máxima puntuación (10 puntos: rotación baja),
mientras que todas las de artículos con rotación infinita (para los que su demanda es 0) se valorarán con
la puntuación mínima (0 puntos: rotación alta)
Una vez calculada la puntuación de rotación de un bulto, se le asignará un valor de tipo de rotación
(baja, media o alta) en función de lo definido en los siguientes nuevos parámetros de configuración:
Aquellos bultos cuya puntuación tenga un valor entre ambos umbrales serán considerados con tipo de
rotación media (amarilla).
Con el objetivo de disminuir el número de escaneos de las prendas procesadas en un taller y enviadas a
un almacén, se utilizará un nuevo tipo de bulto multicelda. La distribución de estos bultos será de 3x3
celdas y no podrá ser modificada. En el taller se clasificarán las prendas procesadas en un bulto
multicelda, este será expedido posteriormente a un almacén, donde será ubicado y pasará a formar
parte del stock disponible en el almacén.
Estos bultos se recepcionarán igual que el resto de bultos en el sistema, según lo descrito en el
requisito de SGAEWMS-RF-001-A – Recepción de envíos.
Igualmente se mostrarán en EWMS > Recepciones (Tipo: Envío a localización), además en la pestaña
“unidades por bulto” se incluirá en la columna “Bulto multicelda” una marca que distinguirá si un bulto
es multicelda o no, extendiendo lo descrito en el requisito SGAEWMS-RF-001.3-B – Detalle de
unidades por bulto para un envío. No será necesario en esta pantalla mostrar el detalle por celda de
un bulto multicelda.
Como para cualquier otro envío se confirmará su recepción según lo descrito en SGAEWMS-RF-001.1-B –
Confirmación de la recepción de un envío con un mensaje ShippingNotificationACK.
Se crearán órdenes de entrada para envíos de taller (que pueden o no contener bultos multicelda)
según lo descrito en SGAEWMS-RF-005-A – Creación de órdenes de recepción. En la pestaña “Unidades
por bulto” se incluirá la columna “Bulto multicelda”, que indicará si un bulto es multicelda o no
dependiendo de si la información teórica del bulto contiene el subnivel de celda.
Los mensajes DEOT, BUOT y FIND se enviarán desde EWMS como para cualquier bulto. Además en el
mensaje COOT se incluirá la información de la celda. Como para cualquier otro bulto, se enviará el
mensaje PreConfirmation una vez recibido el mensaje BURE desde MSR.
Toda la mensajería relativa a la recepción y ubicación de bultos se mantiene igual, salvo los mensajes
mencionados y marcados en el siguiente diagrama que incluirán la información de celda:
El sistema deberá guardar el estado de cada pedido que se esté tratando en el almacén. Según el
pedido vaya pasando por diferentes fases de procesado, su estado mutará.
1. Pendiente: El pedido ha sido recibido en el sistema desde EAI/CIS, pero no ha sido tratado. Está
disponible para ser preseleccionado.
2. Preseleccionado: El pedido ha sido incluido en una preselección creada por un usuario.
3. En picking: El pedido ha sido incluido en una oleada y se ha enviado la información del
cuadrante al módulo de almacenamiento para la realización del picking de las prendas que
componen dicho pedido y al módulo de empaquetado, por lo que ya podría empaquetarse.
4. Picado: Todas las prendas que componen el pedido han sido picadas en el stock del almacén.
5. Clasificando PTL: El pedido se ha empezado a clasificar en un muro de clasificación.
6. Clasificado PTL: El pedido ha sido completamente clasificado en un muro de clasificación.
7. Empaquetándose: El pedido ha comenzado a ser tratado en una estación de empaquetado.
8. Etiquetando: El pedido se ha empaquetado en una mesa en modo SOM y hay al menos una caja
sin etiquetar.
9. Empaquetado: El pedido ha terminado de empaquetarse.
10. En expedición: El pedido está en el área de expedición y ha sido asignado a un palé o a un bulto
de expedición.
11. Expedido: El pedido ha sido expedido del almacén y está en manos del transportista. En este
estado, el pedido ya no podrá ser cancelado.
12. Cancelándose: Se ha recibido la petición de cancelación del pedido, se ha procesado y se ha
informado a los sistemas interesados. Faltaría la confirmación de estos sistemas para poder
cancelarse definitivamente.
13. Cancelando para reempaquetar: Estado temporal para deshacer el empaquetado del pedido en
el almacén.
14. Cancelado: El pedido se ha anulado.
15. Incorrecto: Se ha recibido un pedido cuyo código es igual a otro activo que ya existe en el
sistema. Se descartará su procesamiento.
16. Cancelado definitivamente: Un pedido cancelado puede quedar en suspenso en el almacén,
esperando que se vuelva a recibir (por ejemplo si un pedido no se puede completar por falta
de stock pero aun así el cliente acepta recibirlo). En este estado se asumirá que el pedido no
será recibido de nuevo y si estaba reservado, puede devolverse su mercancía al stock.
17. Pendiente transferencia de picking: El pedido es de tipo packing con prendas de otros
almacenes y todavía no se ha recibido la información de cómo llegarán todas las prendas.
18. Transferencia de picking informada: El pedido es de tipo packing con prendas de otros
almacenes y se ha recibido la información de cómo se recibirán todas ellas.
19. Transferencia de picking recibida: Se ha recibido un bulto que contiene prendas de alguna de
las transferencias de picking notificadas para el pedido.
20. Expedido diferido: El pedido ha sido expedido en el almacén usando la funcionalidad descrita
en SGAEWMS-RF-130-A – Expedición de pedidos en diferido.
El sistema recibirá nuevos pedidos solicitados por clientes a través de diferentes plataformas de venta y
guardará toda la información necesaria para su posterior procesado. Dichos pedidos serán recibidos
mediante un mensaje.
Para cada nuevo pedido recibido se validará si existen las referencias solicitadas. Si no existe alguna de
las referencias solicitadas, el pedido pasará a estado “Incorrecto”.
Si se recibe un pedido que ya existe en el sistema, deberá comprobarse si el antiguo pedido está
cancelado. De ser así, pasará a tratarse el pedido más actual, que estará en estado “ Pendiente” y con
prioridad alta. En caso contrario, se descartará el nuevo pedido recibido y se persistirá en estado
“Incorrecto”.
Si el pedido existe en estado expedido se procesará o no en función del valor del parámetro de
configuración Accept.Shipped.Orders. Si está verdadero se dará de alta como un nuevo pedido,
mientras que si es falso se procesará en estado incorrecto y se mostrará una alarma informando: “Se
descarta el pedido NNNNN por haber sido ya expedido.”
Para cada pedido, deberá determinarse cuál es la empresa logística que se encargará de su transporte
una vez se haya expedido. También deberá calcularse cuál es la fecha máxima de expedición de pedido
para satisfacer los plazos de entrega al cliente.
Una vez realizados todos estos pasos, el pedido será persistido en el sistema con estado “Pendiente”.
Paralelamente a la recepción de pedidos, se podrá recibir cuál será la fecha máxima de expedición para
cumplir con el compromiso de entrega e información de qué transportista se hará cargo de ellos una vez
expedidos. Esta información se recibirá mediante otro mensaje y deberá actualizarse tanto la fecha
máxima de expedición como el transportista asignados previamente al pedido. Será configurable el
hecho de establecer la fecha máxima de expedición según la información recibida o según el criterio
definido en el sistema.
Podrán recibirse también tanto las etiquetas que deberán usarse para empaquetar los pedidos, como
etiquetas de devolución que deberán ir dentro de las cajas de pedido mediante mensajes de sistemas
externos. Dichas etiquetas serán notificadas al módulo de empaquetado para su posterior uso en dicha
fase. Al igual que en el caso de la recepción de la fecha máxima de expedición, será configurable si las
etiquetas recibidas se usan o se descartan para usar las etiquetas definidas en el módulo de
empaquetado. El procesamiento de las etiquetas se detalla en el apartado SGAEWMS-RF-124-A.
Tanto para la recepción de la fecha máxima de expedición y transportista como para la recepción de
etiquetas por parte de sistemas externos, deberá comprobarse que la fecha de generación de mensaje
es más reciente que la información persistida (si ya se ha recibido esta información previamente). De
ser así, se actualizará la información que posee el sistema, si no, se descartará la información recibida.
Existe una excepción a lo indicado en el párrafo anterior: la recepción del mensaje con la información
de etiquetas del pedido no deberá invalidar en ningún caso la fecha máxima de expedición existente
para el pedido en cuestión en ese momento. La fecha máxima de expedición sólo se sobrescribirá
Un pedido estará compuesto por líneas de pedido. Un mismo SKU podrá existir en varias líneas de
pedido, el SGA no limitará este comportamiento. Lo que diferenciará cada línea de pedido será su
propio id.
Además, una línea de pedido será de una única cadena, y así vendrá identificada en cada línea, aunque
un pedido podrá contener líneas de diferentes cadenas.
A efectos de realizar una posterior facturación se podrá necesitar identificar además a nivel de línea de
pedido la localización virtual, en caso de recibir esta información también deberá ser informada en el
cierre de expedición a nivel de línea.
Una línea de pedido podrá tener unidades pendientes de ser recibidas en el almacén y por lo tanto no
asignadas aún al pedido, y a su vez, cada una de estas unidades podrá estar pendiente de diferentes
eventos (picking transfer, preventa, preventa CD1).
El SGA podrá recibir pedidos vendidos en diferentes plataformas de venta, además de en nuestras webs.
Estos pedidos deberán ser preseleccionados y por lo tanto oleados de forma separada. Además pueden
incluir información adicional como el número de pedido y cliente externos o información adicional
sobre las instrucciones a imprimir.
Durante el alta de un pedido será necesario comprobar si éste fue cancelado previamente desde el
almacén por stock out y por lo tanto es susceptible de tener stock ubicado separado reservado para él
en el almacén. De ser el caso deberá marcarse como pedido previamente cancelado por incidencia que
será la marca que se podrá tener en cuenta al realizar la preselección de pedidos.
Los sistemas externos podrán enviar información extra de los pedidos Ecommerce. Para ello, se utilizará
un mensaje FulfillmentOrderUpdate.
- Cabecera: información de almacén destino (GCD), Cadena, Fecha de generación del mensaje e
identificador del mensaje (UUID).
- Subpedido: identificador del subpedido (código de almacén: CODIGO_PEDIDO_WCS)
- Fecha de Compromiso de Preparación: FCP del subpedido. El wording en el Sistema debe ser:
Fecha de Compromiso de Almacén/Warehouse Commitment Date).
Debe gestionarse la asincronía en la recepción de este mensaje con respecto del SalesOrder:
La Fecha de Compromiso de Almacén es un nuevo campo de los pedidos: opcional y con valor null por
defecto.
Las tarjetas regalo son productos que tienen un valor asociado y que pueden usarse como medio de
pago.
Las tarjetas regalo se especificarán en los pedidos recibidos con unas referencias especiales (Ej.
5/0000/000/000/05). Estos códigos, aunque mantengan el formato de un SKU, no tienen
correspondencia en MAESTROS, por lo que deberán de tratarse de manera diferente al resto de prendas.
Al no haber correspondencia en MAESTROS para el SKU de una tarjeta regalo, éstas se persistirán
guardando los propios valores del SKU (tipo de producto, modelo, calidad, color y talla), así como el
mensaje de felicitación asociado a la tarjeta regalo, si es que existiese.
Al contrario que el resto de referencias, que podrán agruparse de manera que pueda haber demanda
mayor que uno en la especificación del pedido, las tarjetas regalo vendrán siempre sin agrupar aún
compartiendo la misma referencia. Es decir, puede darse el caso en que en un mismo pedido se
incluyan dos (o más) tarjetas regalo que compartan el mismo SKU y todas ellas generarán líneas de
pedido iguales con demanda 1.
Los pedidos regalo requieren un tratamiento diferente de los pedidos normales, sobre todo en el
proceso de empaquetado. Cuando se reciba una notificación de nuevo pedido en el sistema, deberá
comprobarse si pertenece a este tipo de pedidos. Un pedido regalo puede requerir la no impresión de
precios en la factura que se envía al cliente, una envoltura especial o la impresión de un mensaje
regalo indicando o no el remitente de dicho mensaje.
Además de recibir información de que un pedido debe tratarse de forma especial en el empaquetado a
nivel pedido, también podrá recibirse dicha información a nivel de línea de pedido. Es decir, es posible
que se solicite que dos líneas del pedido deban empaquetarse con un consumible especial de regalo y el
resto de líneas no.
Para dar soporte a esta funcionalidad, debe persistirse la información recibida a nivel de línea para
poder informar debidamente al módulo de empaquetado, que será el sistema que contenga la lógica
para gestionar dicha información a la hora de guiar al usuario en el empaquetado del pedido.
Si el requerimiento de empaquetado regalo viene a true a nivel pedido, siempre tendrá prioridad sobre
la información dada a nivel de línea y se seguirá tratando tal y como se hace actualmente. Por el
contrario, si viene a false a nivel pedido, debe comprobarse dicho requerimiento para todas las líneas
de pedido por si en alguna de ellas se requiere empaquetado regalo.
Los pedidos con empaquetado regalo parcial (con alguna de sus líneas con empaquetado regalo)
deberán aparecer por separado en el filtro de tipo de empaquetado de la creación de preselecciones.
Se agruparán bajo el nombre REGALO PARCIAL/PARTIAL GIFT:
También, a la hora de olear, si el cuadrante contiene algún pedido con empaquetado regalo parcial,
deberá incluirse un nuevo icono en la hoja a imprimir para indicar este hecho.
Se podrá recibir en cualquier momento, por parte del cliente, una petición para la modificación de la
dirección de facturación o de entrega del pedido.
Para poder realizar dicha modificación, el pedido deberá existir en el sistema y no podrá estar en
estado “Cancelado” o “Expedido”.
Se podrá recibir en cualquier momento la solicitud de cancelación del pedido por parte del cliente o del
centro de atención al cliente. Deberá informarse tanto al emisor de la solicitud del resultado de la
cancelación, como a los diferentes módulos de dicha cancelación, interrumpiendo su procesamiento.
Deberá poder definirse para cada estado de pedido si se puede cancelar o no. Por ejemplo, no permitir
cancelaciones de pedidos que se encuentren en expedición y expedidos, debiendo notificar al cliente o
al centro de atención al cliente que la cancelación no se puede llevar a cabo.
También podrá cancelarse un pedido cuando se reciba una incidencia por inventario insuficiente desde
el módulo de empaquetado. Al no poder satisfacer un pedido por falta de stock, se declarará un
inventario insuficiente (notificando a CIS este hecho) y el pedido pasará a estado “ Cancelado”,
informando de dicha cancelación a aquellos módulos que conozcan la existencia del pedido.
La cancelación de los pedidos en el almacén por stock out o tara será independiente del estado del
pedido, simplemente será cancelable si se comprueba que no hay stock disponible para poder
resolverlo. Si hay stock en estado disponible no se permitirá la cancelación y se le notificará este hecho
al usuario. En caso de que exista stock en estado bloqueado o en tránsito para completar el pedido
(esto es, existe algún PO en estado Nuevo o Activo que incluye las unidades faltantes del pedido y que
no han sido ubicadas todavía) se informará de este hecho al usuario permitiendo la cancelación, previa
confirmación del usuario, mediante el siguiente mensaje en una ventana modal:
Si el usuario pulsa el botón confirmar se procederá a la declaración de stock out. Si pulsa cancelar, el
pedido seguirá en el estado en el que estaba y no se declarará stock out para el pedido en cuestión.
El sistema también permitirá cancelar pedidos por stockout aunque tenga alguna líneas de preventa,
siempre que su estado sea Stock Pendiente y tenga una incidencia declarada.
Puede que el pedido vuelva a recibirse porque el cliente acepta el pedido sin las prendas faltantes, por
lo que si no se ha devuelto la mercancía al stock, ya no será necesario realizar el picking. En caso de no
ser así, se recibirá una cancelación definitiva del pedido, por lo que en dicho caso ya se podrá devolver
la mercancía al stock.
El eWMS proporcionará una interfaz que permitirá la cancelación síncrona de pedidos en función de la
razón de cancelación y del estado del pedido.
Con el nuevo comportamiento se pretende aumentar los estados en los que un pedido puede ser
cancelado sin afectar a la operativa habitual de tratamiento de pedidos. Cuando dicho comportamiento
esté activo, según el estado del pedido en ese momento, se permitirá continuar su picking y
clasificación en muro hasta llevarlo a mesa de empaquetado.
Las unidades picadas de los pedidos en estado “cancelado diferido” o “cancelando picado” no se
tendrán en cuenta para notificar en una sincronización de stock.
Cuando el pedido llegue a mesa de empaquetado, se recibirá una notificación de pedido finalizado que
provocará que finalmente tanto el pedido original como el nuevo pasen a estado anulado y se informará
mediante una alerta de que se puede devolver al stock su contenido.
El sistema permitirá cancelar los pedidos de manera distinta a lo descrito en el requisito SGAEWMS-RF-
105-A –Cancelación y cancelación definitiva de pedidos para los pedidos que estén en la instalación RBS.
Para estos pedidos, el módulo coordinador enviará el mensaje CPED para cancelar estos pedidos a RBS y
estos pasarán a estado Cancelado. Dado que es posible que ya hayan sido clasificados algunos artículos
de estos pedidos, estos deberán tenerse en cuenta cuando se reciba el mensaje de cierre contenedor
(COPE) desde RBS.
Cuando se reciba el mensaje COPE, que contiene todos los pedidos clasificados, el módulo coordinador
deberá buscar si entre el listado de pedidos se encuentra algún pedido cancelado. En caso afirmativo,
estos pedidos deberán ser procesados de manera que no afecte a la operativa habitual de tratamiento
de pedidos tal y como se indica en SGAEWMS-RF-907.1-B Evacuación.
El sistema mostrará el listado de pedidos existentes en el almacén. Dichos pedidos podrán filtrarse
utilizando distintos criterios:
- Cadena
- Estado
- Tipo de envío
- Tipo de pedido (en el cual se mostrarán las marcas presentes a nivel pedido o línea de pedido
así como los tipos de empaquetado)
Nota: Si se marcan dos o más opciones el pedido para aparecer en el resultado deberá ser
de ambos tipos.
Del mismo modo añadiremos una columna y un filtro para la plataforma de venta, aparecerá la
descripción de la plataforma para aquellos pedidos que tengan plataforma de venta externa, para los
que no tengan saldrá vacía. El filtro correspondiente tendrá tantas plataformas de venta como haya en
la tabla de SGA_MAESTROS y una adicional que será WWW y que representará que no tiene plataforma
de venta externa. Como todos los filtros y columnas, ésta se podrá configurar por perfil si ha de salir o
no.
También existirá un filtro que permita ver aquellos pedidos que son expedibles o no, además se añadirá
la columna correspondiente con esta información.
- La casilla de la izquierda hará que se incluyan los pedidos que contengan la marca indicada (a
nivel pedido o a nivel de línea).
- La casilla de la derecha hará que se excluyan los pedidos que tengan la marca indicada (a nivel
pedido o a nivel de línea).
- En caso de no marcar ninguna de las casillas, la marca indicada no se tendrá en cuenta y dará
igual si está o no presente en el filtrado de pedidos.
- No será posible marcar ambas casillas simultáneamente para una marca concreta.
El texto de la columna de “Fecha máxima de expedición” aparecerá en color negro cuando la fecha
mostrada sea la enviada por el sistema externo de transporte y en naranja cuando la fecha haya sido
calculada por el propio módulo coordinador. Esto permitirá a los usuarios distinguir para qué pedidos
Habrá una fila de totales debajo de la tabla dónde se muestra la información de los pedidos, en la cual
se indicará la suma de las unidades de los pedidos que se están mostrando.
El botón exportar permitirá extraer la información que se está visualizando en la tabla a una hoja Excel.
Se mostrará una columna para cada una de las marcas presentes que se vayan a exportar, indicando con
un “Verdadero” o “Falso” si esa marca aplica para cada pedido.
En el fichero exportado, además, se incluirán los datos del transporte asociados a la expedición del
pedido, si dicha Expedición ya ha sido cerrada. Dichos datos habrán sido informados mediante el
mensaje COEX enviado por ESHP a EWMS, se mostrarán a continuación de la columna “Fecha de
expedición”, y serán los siguientes:
Para cada pedido mostrado, podrá accederse a su detalle, dónde se mostrarán las prendas que
componen el pedido, las cajas en las que se han empaquetado las prendas (si ya ha sido empaquetado),
el país de destino, el operador logístico que lo transportará, la cadena, la preselección, tipo de pedido
(indicando las marcas presentes a nivel pedido o línea de pedido así como los tipos de empaquetado),
oleada, cuadrante y expedición en la que está incluido y las fechas en las que ha cambiado de estado.
En caso de tener alguna incidencia asociada, también deberá ser mostrada en el detalle. Se podrá abrir
una ventana nueva por cada pedido diferente para el que se desee mostrar su detalle.
- Habría que cambiar la etiqueta de la columna “PT/TP” a “Picking Type/Tipo de Picking”. Dado
que los valores de esta columna son:
Se puede usar una etiqueta más larga mientras que para la nueva columna “PT”, los valores
serán “Sí” o “No”.
Para cada pedido mostrado, podrá accederse a los detalles de cada una de las líneas de pedido, dónde
al menos se mostrará:
El botón exportar permitirá extraer la información que se está visualizando en la tabla a una hoja Excel.
Para ello, el sistema deberá consultar todas las marcas de los pedidos en la selección actual y generar
una columna para cada una de las distintas marcas. En caso de que haya pedidos con las mismas
marcas, estas se agruparán en una misma columna. Para indicar que los pedidos tienen esas marcas, se
cubrirá la celda con “Sí” y en caso contrario, se dejará en blanco.
Por ejemplo, en caso de que entre los pedidos que se muestran en la pantalla haya un pedido con los
flags “SRPLS” “CUSTOM” y otro con los flags “CUSTOM” “SHWRM”, el fichero exportado tendrá tres
columnas para mostrar esta información. En este caso, para el primer pedido se mostrará un “Sí” para
las columnas “SRPLS” y “CUSTOM” mientras que se mostrará “Sí” para el segundo pedido en las
columnas “CUSTOM” “SHWRM”. El resto de las columnas de marcas estarán en blanco para esos dos
pedidos y las tres columnas para el resto de pedidos al no tener ninguna marca.
El usuario podrá crear preselecciones sobre los pedidos presentes en la bolsa de pedidos pendientes de
procesar. El sistema ofrecerá diversos filtros basados en los siguientes criterios:
1. Cadena
2. Cronológicos
a. Fecha de compromiso de almacén
i. Dado que es un campo opcional de los pedidos, si existen pedidos
preseleccionables con FCP sin asignar (valor null) deberá haber una agrupación
vacía dentro de los posibles valores del filtro.
b. Fecha máxima de preparación (con fecha horas y minutos)
c. Fecha de compra
d. Prioridad
3. Tipo de pedido
4. De transporte
a. Tipo de envío
b. Tipo de servicio cliente
c. Tipo de servicio de transportista
d. Transportista
5. Geográfico
a. País destino
Para cada opción del filtro se mostrará el número de pedidos que cumplen con dicha opción. Una vez
seleccionados los filtros deseados, el sistema buscará los pedidos que cumplen las condiciones exigidas
y mostrará el número de pedidos y unidades que contienen dichos pedidos respecto al total de
pendientes.
En el caso de los filtros de descarte de pedidos sin etiqueta de transportista y de pedidos sin etiqueta
de devolución, existirá un check para cada uno que al ser marcado y realizar el recálculo, provocará
que el sistema compruebe para los pedidos seleccionados si tienen o no etiquetas de transportista o de
devolución en un estado válido (Estos dos filtros actuarán de forma independiente). De no ser así, los
eliminará de la selección. Al desmarcarlos y recalcular, volverá a tener en cuenta todos los pedidos sin
importar si tienen o no etiqueta de transportista o de devolución. El valor por defecto para dichos
filtros y cuando se haga una limpieza de los mismos será desmarcado, es decir, por defecto se tendrán
en cuenta todos los pedidos.
En el octavo filtro, el de pedidos con necesidad de impresión, podrá no seleccionarse ningún filtrado y
si se filtrase el comportamiento sería:
i. Sí: Aquellos pedidos cuya marca de imprimir ticket sea verdadera, tengan mensaje
regalo o tengan mensaje de tarjeta regalo.
ii. No: Aquellos pedidos que tengan el valor de imprimir ticket como falso y no tengan
ningún mensaje que implique la impresión de documentación para el pedido más allá de
las etiquetas de transportista.
En el filtro de tipo de pedido, además de los tipos “Estándar” y “Regalo” se incluirán filtros para todas
aquellas marcas a nivel de pedido o a nivel de línea presentes en alguno de los pedidos en estado
“Pendiente”. El nombre del filtro será el mismo que el de la marca recibida en el sistema coordinador.
Los pedidos que tengan más de una marca, ya sea a nivel pedido o línea de pedido, serán contabilizados
dentro de los tipos de pedido de cada una de las marcas.
- La casilla de la izquierda hará que se incluyan los pedidos que contengan la marca indicada (a
nivel pedido o a nivel de línea).
- La casilla de la derecha hará que se excluyan los pedidos que tengan la marca indicada (a nivel
pedido o a nivel de línea).
- En caso de no marcar ninguna de las casillas, esa marca no se tendrá en cuenta y será
irrelevante si un pedido tiene incluye dicha marca o no a la hora de seleccionarlo.
No será posible marcar las casillas de Sí y No simultáneamente para una misma marca.
Una vez establecidos los pedidos que se requieran, se podrá crear la preselección. Para ello deberá
indicarse un nombre para identificarla. La preselección creada deberá ser persistida, manteniendo la
Un mismo pedido no podrá estar presente en más de una preselección. El sistema debe garantizar que si
dos usuarios están creando preselecciones en las que se incluye un mismo pedido, el pedido sea incluido
únicamente en una de ellas.
Los filtros usados podrán guardarse para ser utilizados en la creación de preselecciones posteriores.
Estos filtros precargados podrán ser eliminados cuando el usuario lo desee.
El orden de los filtros, será configurable, a excepción de los filtros para descartar pedidos sin etiqueta
de transportista o de devolución, que se mantendrán siempre en la misma posición.
El usuario podrá limpiar los filtros seleccionados en cualquier momento para partir de cero en la
creación de una preselección.
El usuario deberá introducir un nombre para describir la preselección realizada. En aquellos Centros que
tengan el WDO (servicio de optimización de oleada) habilitado, o para aquellos perfiles que tengan
El eWMS permitirá la creación de preselecciones desde la pantalla actual de Crear Preselección con un
nuevo botón Crear desde fichero.
Pedirá al operador que le dé un nombre a la preselección a crear y que seleccione el fichero a subir. En
aquellos Centros que tengan el WDO (servicio de optimización de oleada) habilitado, o para aquellos
perfiles que tengan acceso al mismo (Ver SGAEWMS-RF-134-A – Optimización de oleada), la ventana
incluirá un checkbox para decidir si la preselección se habilita como disponible para una petición de
servicio WDO.
El formato del fichero deberá ser un csv donde se incluirá el listado de pedidos, con un pedido en cada
fila. El código de pedido que se comprobará es el código_pedido_wcs.
Se podrán añadir a la preselección a crear aquellos pedidos que se encuentren en estado pendiente o
preseleccionado, estos últimos se cambiarán de preselección a la que se está creando, pero no
cambiará su estado, mientras que para los primeros sí cambiará.
Se debe comprobar cómo se está realizando la consulta del selector de rutas para saber si se están
filtrando solo aquellas rutas presentes en los pedidos pendientes o si se están obteniendo directamente
todas las rutas del maestro de transporte MAESTROS_ECOMMERCE.RUTA_ECOMMERCE.
Si se están obteniendo todas las rutas del maestro configuradas por transporte se debe modificar la
consulta para obtener solamente las rutas activas, es decir, aquellas que tienen el campo de la tabla
RUTA_ECOMMERCE, RUTA_DE_BAJA = 0. Si el campo RUTA_DE_BAJA = 1 quiere decir que la ruta se ha
eliminado de forma lógica por lo que no debe mostrarse al usuario en la preselección de pedidos.
El sistema mostrará el detalle de las preselecciones que están en curso. Dichas preselecciones son todas
aquellas que contienen algún pedido que no ha sido expedido.
El automatista tendrá la posibilidad de filtrar las preselecciones que se muestren en pantalla, mediante
los siguientes filtros:
Cadena: Podrá seleccionar una sola cadena, en cuyo caso se mostrarán las preselecciones
correspondientes a dicha cadena, o no seleccionar ninguna, en cuyo caso se mostrarán todas las
preselecciones registradas en el Sistema.Al pulsar el botón “Buscar”, el Sistema realizará la búsqueda
según los valores introducidos en los filtros de selección. Si no se introduce ningún valor, se mostrarán
todos las preselecciones registradas en memoria, sin filtrar.
Exportar: Exportará las preslecciones a un fichero en formato .csv, con todas las columnas.
Ver pedidos. Con el pedido seleccionado, se abrirá la ventana de Seguimiento de Pedidos.
Ver oleadas. Con la oleada correspondiente al pedido seleccionado, se abrirá la ventana de
Seguimiento de Oleadas. Este botón solo estará activo si el Pedido ha sido oleado.
Una oleada, que al fin y al cabo es una orden de trabajo, podrá estar en los siguientes estados:
Una vez creadas las preselecciones, el usuario podrá generar oleadas, las cuales lanzarán el proceso de
picking en el almacén. Los pedidos en estado “Recibido” o “Preseleccionado” serán los candidatos a
formar parte de una oleada. Como origen de la oleada se mostrará “Bolsa de pedidos” para los pedidos
en estado “Recibido” y no asociados a ninguna preselección, y las distintas preselecciones que estén
asociadas con pedidos en estado “Preseleccionado”.
Para poder crear las oleadas el sistema mostrará una serie de filtros basados en criterios de almacén
que permitirán optimizar el proceso de picking. Los filtros serán los siguientes:
1. Cadena
2. Origen
a. Bolsa de pedidos
b. Preselecciones creadas previamente
3. Contenido del pedido
a. Número de referencias por pedido
b. Número de unidades por pedido
El sistema debe tener en cuenta que un SKU puede estar en diferentes campañas, por lo que deberá
agrupar dichos SKU’s.
Al igual que en el caso de las preselecciones, cada opción de los filtros mostrará el número de pedidos
que la cumplen. Una vez seleccionados los filtros deseados, el sistema buscará los pedidos que cumplen
las condiciones exigidas y los mostrará por pantalla. Se mostrará también la cantidad de unidades
agrupadas de todos los pedidos seleccionados por los filtros; este dato no es necesario mostrarlo de
manera relativa con la cantidad total de unidades con la barra de progreso como se muestra respecto a
los pedidos, solo será necesario mostrar el valor.
Una vez establecidos los pedidos que se requieran, se podrá crear la oleada. Para ello deberá indicarse
un nombre para identificarla, cuantos pedidos se agruparán por cuadrante y el tipo de oleada que se
quiere crear. Los tipos podrán ser:
Posteriormente, la oleada creada deberá ser persistida, indicando los pedidos asociados.
El sistema calcula cual es la fecha máxima de picking de cada cuadrante en función de la menor fecha
máxima de preparación de todos los envíos y le resta un tiempo configurable por almacén. La magnitud
del valor estará expresada en minutos. El parámetro será configuración por BBDD; la clave es
quadrantMaxPickingTime; el valor por defecto es 180. De tal forma que si un pedido se expide a las
16:00, las tareas de picking deberían terminar antes de las 13:00.
Se informa al área de almacenamiento cual será la instalación destino a la cual deben llevar los
contenedor de picking una vez se vayan completando. En esta fase la instalación destino será EPAC.
Además se deberá informar cual es la subinstalación de la instalación en la cual se tratarán los
contenedores de picking. Si el tipo de cuadrante es unitarios, la subinstalación será el empaquetado, si
el cuadrante es de medios, la subinstalación será PTL.
Una vez creada, se crearán las líneas de reparto para controlar el picking, se imprimirán los cuadrantes
(ver SGAEWMS-RF-112-A-Creación de cuadrantes), se enviará la información al módulo de
almacenamiento para poder comentar el proceso de picking y se notificará también al módulo de
empaquetado la información de los pedidos oleados y sus cuadrantes asociados.
Las líneas de pedido referentes a tarjetas regalo no producirán líneas de distribución ni se informará
sobre ellas al módulo de stock. Su “picking” se producirá por fuera del sistema de manera controlada
por parte del personal del almacén cuando sean requeridas en las mesas de empaquetado.
Los pedidos asociados a una oleada pasarán a estado “En picking”. Un mismo pedido no podrá estar
presente en más de una oleada. Si dos usuarios están creando oleadas en las que se incluye un mismo
pedido, se avisará al usuario que haya intentado crear la oleada más tarde, advirtiéndole que debe
actualizar su búsqueda.
Los filtros usados podrán guardarse para ser utilizados en la creación de oleadas posteriores. Estos
filtros precargados podrán ser eliminados cuando el usuario lo desee.
El usuario podrá limpiar los filtros seleccionados en cualquier momento para partir de cero en la
creación de una oleada.
El comportamiento por defecto para el filtro descartar pedidos con stock insuficiente será estar
marcado.
Durante el proceso de selección de pedidos para incluir en la oleada y cada vez que el operario pulse en
recalcular se le mostrarán al operario los pedidos y unidades de la selección actual y del total
pendiente del siguiente modo:
A la hora de crear una oleada se chequeará que no se supere el número máximo de pedidos oleados
pendientes de picar (en estado “en picking”), que será configurable en base de datos
(maxWavedNotPickedOrders). En caso de que se supere el número no se permitirá crear la oleada y se
le mostrará un mensaje al usuario indicando: “No se puede crear la oleada hay X pedidos ya oleados
pendientes de picar”
Cuando se cree una oleada o se recalcule en la pantalla de creación de oleadas, deberá de tenerse en
cuenta el límite de pedidos oleables que se han definido. La configuración y gestión de estos límites se
ha descrito en el requisito (SGAEWMS-RF-130-A – Capacidades por tienda). Como se ha comentado
también en el requisito, típicamente hablamos de tiendas, pero se debería de configurar y tener en
cuenta a nivel localización.
Así pues, para cada una de las tiendas (o localizaciones) para las que se haya definido un número de
pedidos oleables, el número de pedidos incluidos en la nueva oleada más el contador del número de
pedidos oleados no puede ser nunca mayor que el límite que se haya definido.
Los criterios para delimitar los pedidos oleables de la tienda en la pantalla de creación de oleadas son:
Es decir, si para una tienda debido a su capacidad, solo podemos olear 10 pedidos y el número de
pedidos que tiene pendientes esa tienda son 50, en la pantalla de creación de oleadas nos aparecerán
solo los 10 pedidos con fecha máxima de expedición menor. Si la fecha máxima de expedición
coincidiera entre dos pedidos, sería oleable el de fecha de compra menor. Si ésta última también
coincidiese, se miraría el id de pedido, se podría olear el del id menor.
Si el número de pedidos oleados fuese igual al límite configurado de oleables para una tienda, para
seguir oleando pedidos de esa tienda se podrá de proceder de 3 maneras diferentes:
Cuando el usuario marque la opción de descartar pedidos con stock insuficiente o la definida en el
requisito SGAEWMS-RF-132.1-A – Opción de oleada estricta en base a tamaño de PTL, el sistema deberá
ordenar el listado de pedidos para decidir qué pedidos cumplen los criterios seleccionados y cuales son
descartados.
Por defecto, el criterio que deberá usarse en ambos casos es el de fecha de compra, priorizando
aquellos pedidos cuya fecha de compra sea menor.
Para aquellas oleadas en el área de la automatización, es decir, aquellas generadas utilizando los filtros
descritos en el requisito SGAEWMS-RF-110.4-A – Filtros para oleadas en área de automatización¸el
criterio de ordenación podrá ser configurado en base de datos en el parámetro
create.wave.sort.criteria.automation. Los posibles valores de este parámetro son:
En caso de que el parámetro no exista en base de datos, se usará el criterio por defecto.
Con el fin de poder crear oleadas de pedidos lo más eficientes posible en el área de automatización, el
sistema deberá permitir filtrar los pedidos en base a donde se ubica el stock necesario para satisfacer la
demanda. Para ello, el sistema deberá disponer de dos filtros para este propósito en la pantalla de
creación de oleadas. Estos filtros deberán de disponer de distintas opciones para permitir a los usuarios
filtrar los pedidos según las diferentes necesidades de la operativa en cada momento.
Estos filtros deberán estar disponibles en la pantalla de creación de oleadas tal y como se muestra en la
imagen a continuación:
En caso de que el usuario marque ambas opciones, el sistema filtrará aquellos pedidos que cumplen al
menos una de ellas.
Los valores disponibles que el usuario podrá seleccionar para ambos filtros estarán configurados en dos
parámetros en base de datos, create.wave.automation.filter.percentages y
create.wave.automation.filter.amounts, siendo el primero para los valores disponibles en el filtro de
porcentaje de unidades y el segundo para el filtro del número de unidades, respectivamente. Por
defecto, en ambos casos, se seleccionará la opción configurada con un valor mayor.
También deberá haber una opción “Otro” para que los usuarios del sistema puedan insertar cualquier
valor si así lo desean. En caso de seleccionar esta opción, el sistema deberá mostrar un input para que
que puedan escribir el valor deseado, solo pudiendo insertar números enteros sin parte decimal entre 1
y 100.
Cuando el usuario cree un cuadrante utilizando alguno de esto filtros, el módulo coordinador deberá
especificar que se trata de un cuadrante con prioridad de picking en AGVs. Esto se realiza mediante el
campo “Tipo picking” del mensaje CUEC.
Dado que no todos los centros poseen un área de stock automatizada, y para evitar posibles confusiones
entre los usuarios, deberá existir la posibilidad de mostrar o no estos filtros en la interfaz de usuario.
Un cuadrante es una agrupación de pedidos para los cuales se realizará el picking de las prendas que los
componen en el stock del almacén. Las oleadas se dividen en cuadrantes para realizar el picking de una
manera más óptima, pudiendo trabajar más de una persona en la misma oleada.
Con la creación de las oleadas, se generarán los cuadrantes de reparto necesarios para realizar el
picking en las áreas de almacenamiento del almacén. Los cuadrantes contendrán líneas de distribución,
las cuales indicarán para cada referencia, qué cantidad debe obtenerse del stock. Dicha información se
enviará al módulo de almacenamiento para poder comenzar con la tarea de picking. También se
imprimirán para guiar al operador encargado de realizar dicha tarea. Al mismo tiempo, se enviará la
información de cada cuadrante creado al módulo de empaquetado para poder procesar posteriormente
las prendas picadas.
Las hojas de picking mostrarán un código de barras que identificará el cuadrante al que pertenecen, el
área de almacenamiento donde están las prendas que contienen, una descripción introducida por el
operador para la oleada y un número de secuencia dentro del total del cuadrante (Ej. 1/2 – 1/3).
También se indicará de qué tipo es el cuadrante (unitario, monopedido, medio o medio por zona).
Los cuadrantes serán diferentes dependiendo del tipo de oleada que representen:
1. De pedidos medios: Estarán agrupados por referencia y para cada una se imprimirán pegatinas
que identificarán prendas de dicha referencia y de pedidos diferentes. Cada pegatina indicará a
qué cuadrante pertenece, el SKU, el número de pedido dentro del cuadrante, y el código de
pedido
2. De monopedidos: Todas las referencias del cuadrante pertenecerán al mismo pedido con lo que
no serán necesarias las pegatinas para identificarlas
3. De pedidos unitarios: Cada referencia representará un pedido, con lo que no serán necesarias
pegatinas para identificarlas
4. De pedidos medios por zona: Estarán agrupados por área – stock y referencia, para cada una se
imprimirán pegatinas que identificaran prendas de dicha referencia y de pedidos diferentes.
Cada pegatina indicará a qué cuadrante pertenece, el SKU, el número de pedido dentro del
cuadrante, y el código de pedido
5. De pedidos previamente cancelados: Se mostrará la información de los pedidos con los SKUs de
los que tienen demanda así como sus pedidos cancelados previos y la fecha de cancelación.
Adicionalmente, el sistema debe permitir volver a generar los cuadrantes, recalculando las posiciones
de los SKU’s demandados, siempre que se considere necesario (incluso de pedidos ya expedidos o de
cuadrantes cuyo picking ya se ha realizado). En caso de que la configuración en SGA_MAESTROS indique
que el cuadrante se puede realizar SIN_PAPEL, el sistema no generará automáticamente la hoja; pero sí
que permitirá generarla bajo demanda desde el seguimiento de oleadas.
Una vez impresos los cuadrantes, los operadores podrán usarlos como guía por el área de
almacenamiento para realizar el picking.
El sistema debe gestionar el seguimiento de la tarea de picking, teniendo en cuenta las unidades y las
referencias que se han picado hasta completar cada cuadrante. Para ello, el módulo que gestiona el
stock notificará al sistema cada vez que se saque una prenda de una ubicación.
También se recibirá una marca de fin cuando se haya picado toda la demanda para una referencia
contenida en un cuadrante, es decir se haya completado una línea de distribución. En este caso, el
sistema deberá tenerlo en cuenta para finalizar el cuadrante cuando todas las líneas de distribución
contenidas en él se hayan completado.
Si un cuadrante se finaliza sin haber completado la demanda para alguna de las referencias asociadas,
se alarmará indicando las referencias no completadas. Del mismo modo, si para alguna referencia se
pica más cantidad de la demandada se alarmará para que el usuario lo tenga en cuenta. Una vez
finalizado un cuadrante, no se podrán picar más referencias asociadas al mismo. Si esto ocurriese, se
alarmaría indicando la referencia implicada.
Cuando se finalice el picking de todas las líneas de distribución de un cuadrante para las que se pueda
completar un pedido, este pasará a estado “Picado”.
Un cuadrante se cerrará cuando todos los pedidos contenidos en él hayan sido expedidos o cancelados
(ver SGAEWMS-RF-122-A-Cierre de expediciones).
Cada carro atiende a la demanda de empaquetado de un subgrupo de pedidos del cuadrante. El área de
clasificación informa al sistema de los carros utilizados en la clasificación del cuadrante y los pedidos
que se han consolidado en cada carro.
Se elimina el contenedor virtual de cuadrante relacionado; cuando todos los pedidos han sido
empaquetados o cancelados.
Todos los pedidos empaquetables tienen incidencia.
Empaquetar pedido
Cancelar pedido
Declarar incidencia
Al eliminar el carro, el sistema notifica la acción al área de clasificación (PTL) para indicar que puede
reutilizarlo en la clasificación de otro cuadrante.
Hay que tener en cuenta que al resolver la incidencia, el carro de clasificación no existirá.
El estado de los pedidos del cuadrante pasa a PTL SORTING. Solo se actualiza el estado de los pedidos
que se pueden clasificar: los activos no empaquetados y cancelaciones diferidas.
OT
Ola
Cuadrante
Carro
Secuencia
El estado del cuadrante pasa a CLASIFICADO y se actualiza la fecha de modificación. Se crean los carros
relacionados con el cuadrante y los pedidos.
El estado de los pedidos del cuadrante pasa a PTL FINISHED. Solo se actualiza el estado de los pedidos
que se pueden clasificar: los activos no empaquetados y cancelaciones diferidas.
Se notifican primeros los carros eliminados; después se notifican los carros clasificados y los pedidos
consolidados en cada uno.
PTL notifica la acción con FIAM; EWMS notifica los carros al empaquetado con PECA.
Si el picking se ha realizado con contenedores con matrícula, se eliminan los contenedores de picking
relacionados con el cuadrante, que serán reutilizados para el picking de más cuadrantes. Se notificará
al área de almacenamiento de todos los contenedores con el mensaje REMC.
Hay que tener en cuenta que se pueden reutilizar carros en diferentes cuadrantes en un espacio corto
de tiempo, por lo que es importante comprobar la fechas de modificación del cuadrante y la fecha del
mensaje. Si la fecha del mensaje es anterior, se genera ERROR y se para con el proceso.
Un cuadrante puede clasificarse varias veces y ser informado de todas. Si existen carros de una
clasificación anterior, se eliminan del sistema y se notifica al área de empaquetado.
La reutilización de carros, implica que pueda haber cuadrantes con carros que utilizan la misma
matrícula. Estos se validan según el SGAEWMS-RF-113.9,
Al procesar los mensajes de clasificación de cuadrante, se comprueba si existen carros con esas
matrículas.
En ese caso, se notifica con FIAM sin matrícula de carro. El sistema solo actualiza el estado de pedido a
PTL FINISHED.
El contenido de los contenedores de picking no se tiene en cuenta para el cálculo del stock del
almacén, el stock se calculará con el contenido de los contenedores virtuales de cuadrante.
NOTA: No hay que olvidar que el paso final será la gestión del stock con los contenedores de picking,
pero debido al impacto que puede una mala gestión, se irá comprobando si es correcto.
Las unidades repartidas de las líneas de distribución aumentan en la cantidad informada y se actualiza
el estado con lo notificado por el área de almacenamiento.
NOTA: En caso de haber varios contendores en estado activo, se genera traza de ERROR y se obtiene el
más reciente.
Si el tipo de instalación es RBS, se notificará la información del teórico con IACR y las reservas con
SASS. Se notificará el teórico de la información de los contenedores a EPAC para la gestión de la
consolidación de los contenedores en el parking.
Una oleada creada pasará a estado “Activo” cuando para alguno de sus cuadrantes, se haya comenzado
el proceso de picking.
El estado de las oleadas no variará mientras se realice la tarea de picking para ellas. Deberá gestionarse
toda la información asociada a los cuadrantes que la componen, permitiendo conocer el progreso del
picking.
Una oleada pasará a estado “Finalizado” cuando todos los pedidos incluidos en la misma se hayan
empaquetado. El módulo de empaquetado notificará cada vez que ocurra uno de estos eventos, por lo
que será tarea del sistema gestionar la información para poder finalizar las oleadas.
Una oleada se cerrará cuando todos los pedidos contenidos en la misma hayan sido expedidos (ver
SGAEWMS-RF-122-A-Cierre de expediciones).
Para ello deberá mostrar todas las oleadas creadas entre dos fechas concretas cuyo estado sea el
especificado por el usuario. Adicionalmente, podrá filtrarse por el código de un cuadrante, mostrando
entonces la oleada que lo contiene. Para cada oleada se mostrará su identificador, la descripción, la
fecha de creación, el estado y la cantidad de pedidos que están en cada estado (“En picking”,
“Empaquetándose”, “Empaquetados”, “Expedidos”, “Cancelados”) así como la cantidad total de
pedidos de dicha oleada.
En el detalle de cada oleada se indicará qué cuadrantes la componen, las preselecciones que se han
usado para crearla y los pedidos incluidos en ella.
Ola
Cuadrante
Uds Demanda
Uds Solicitadas
Uds Inducidas
Uds Déficit
Uds Clasificadas
Uds Empaquetadas
Uds Expedidas
Id orden de trabajo.
Cadena.
Descripción.
Fecha creación.
Estado.
Picking.
Empaquetando.
Resueltos.
Expedidos.
Cancelados.
Total.
Total unidades.
Tipo.
Las prioridades que se podrán seleccionar para una orden de trabajo serán las de la siguiente tabla,
mostrándose al operador únicamente el nombre, que se corresponde a una prioridad de valor numérico
según lo establecido a continuación:
Se permitirá cambiar la prioridad de varias órdenes de trabajo simultáneamente mientras que todas
ellas permitan el cambio de prioridad, si alguna no lo permite no se permitirá continuar advirtiendo al
operador de aquellas que no permiten el cambio de prioridad.
Al realizar el cambio de prioridad se informará mediante el mensaje PRIO a los sistemas implicados en
la preparación de las mismas.
Debe destacarse que no es necesario que se haya completado el picking de un pedido o de un cuadrante
para poder procesarlo en un puesto de empaquetado, ya que la información ya ha sido enviada en la
propia creación de la oleada.
Si se recibe una actualización de la dirección del pedido, el sistema deberá notificar al módulo de
empaquetado de la misma para que pueda modificarla e imprimir la dirección correcta en la etiqueta
de pedido y de devolución. Si el pedido ya se ha empezado a empaquetar, se descartará la
actualización.
El módulo de empaquetado enviará una notificación al sistema cuando termine de empaquetar cada
pedido. Ante cada uno de estos eventos, eWMS deberá actualizar el estado del pedido a
“Empaquetado”, persistir toda la información recibida concerniente a las cajas que componen cada
pedido y su contenido y enviar la información referente a dichas cajas de pedido al módulo de
expedición para que pueda gestionar su salida del almacén.
Para cada línea de pedido que identifique una tarjeta regalo, se recibirá, además, el código de la
tarjeta física que se le ha asignado en la mesa de empaquetado, la cual identificará unívocamente cada
tarjeta.
También debe destacarse el caso de la gestión de códigos datamatrix para la fiscalidad rusa. Desde el
sistema de empaquetado puede recibirse, al cierre de empaquetado de un pedido, códigos de
datamatrix relacionados con cada unidad del pedido. Dichos códigos deberán persistirse para ser
informados hacia sistemas externos en el momento de la expedición tal y como se especifica en el
requisito SGAEWMS-RF-122-A – Cierre de expediciones.
El módulo de empaquetado incluirá la información del tipo de caja de pedido específico de proveedor y
el código de secuencia único. Ambos datos no tienen que ser obligatorios, ya que es posible que algún
almacén no disponga de los consumibles adecuados para este tipo de gestión. En caso de recibirlos, se
deben persistir y notificarse al cierre de la expedición.
Una vez recibida la notificación de empaquetado de todos los pedidos de una oleada, deberá
actualizarse el estado de la misma a “Finalizado”.
El módulo de empaquetado, enviará la información del nuevo tipo de caja genérico, el tipo de caja
proveedor y el código de secuencia único. Se actualizará la información de la caja de pedido con la
nueva incluida en el mensaje CATC.
Será el módulo de empaquetado el encargado de notificar las incidencias que ocurran en los pedidos. El
sistema recibirá dichas notificaciones y las persistirá, pudiendo ofrecer información sobre todos los
pedidos con incidencias, tanto resueltas como no resueltas.
En el caso de las incidencias de Faltante y de Tara, dicha notificación (INPE, con estado ‘A’, abierta)
vendrá informada (en el campo opcional ‘Mesa creación’) con la descripción de la estación de
empaquetado desde la que se está creando la incidencia en el módulo de empaquetado.
Para cada una de ellas, se mostrarán en la tabla los siguientes datos relativos a la incidencia:
Incidencia.
SKU.
Unidades (Units).
Tipo.
Estado.
Pedido (WCS).
Pedido cliente.
Cadena.
Stockout previo (Previous stockout). Se indicará si el pedido se ha registrado por haber sido
cancelado por incidencia tal y como se describe en el requisito SGAEWMS-RF-117.2.1-A.
Consolidado (Consolidated). Una marca que da información sobre si el pedido es consolidado o
no.
País.
T. servicio (tipo servicio genérico).
Fecha compra.
Fecha máx. expedición.
Existirán filtros en esta pantalla agrupados por características de la propia incidencia y otros agrupados
por características del pedido. En el filtro de fecha de incidencia se podrá buscar por fecha de creación
o fecha de finalización y en el filtro de fecha de pedido por la fecha de compra o por la fecha máxima
de expedición. Se pueden observar la disposición de los filtros y de los campos a mostrar para cada
incidencia en el siguiente mockup:
Desde esta pantalla se podrán realizar diferentes acciones mediante los botones de la parte inferior:
- Exportar: este botón permitirá extraer la información que se está visualizando en la tabla a una
hoja Excel.
- Imprimir lista de picking: Esta funcionalidad se detalla en el requisito SGAEWMS-RF-117.4.1-A –
Lista de picking para incidencias de PTL.
- Cancelar pedido: esta funcionalidad se detalla en el requisito SGAEWMS-RF-117.2-A –
Cancelación de pedidos con incidencias.
Cuando desde el ePAC se envíe la creación de una o varias incidencias para un pedido el eWMS tendrá
que gestionar tanto el stock relacionado con el mismo como la forma de resolver las incidencias.
El eWMS gestionará en un solo paso todas las incidencias del mismo pedido.
Además de la gestión del stock se facilitará la resolución de incidencias, para eso el eWMS creará un
cuadrante de incidencias para cada pedido. La identificación de este cuadrante se generará desde el
eWMS en el momento de enviar hacia ePAC la información del pedido, aunque es posible que éste nunca
llegue a usarse, el nombre del cuadrante estará compuesto por QU+I+Número de pedido almacén, es
decir, existirá un cuadrante de incidencias único por pedido, éste será el mismo para todas las
incidencias independientemente del número de veces que éstas se produzcan.
Existirán diferentes comportamientos en función del tipo de incidencia y de si las prendas en incidencia
fueron o no picadas.
Cualesquiera de las variaciones podrán quedar retenidas si estuviese activada la bolsa de stock, según lo
descrito en SGAEWMS-RF-205-A-Bolsa de stock.
La resolución final de las incidencias dependerá del ePAC, el eWMS únicamente debe facilitar su
resolución y cuando ésta se produzca recibirá las actualizaciones que ocurran sobre las incidencias
desde ePAC para poder mostrar dicha información y tratarla adecuadamente.
En el caso de las incidencias de Faltante y de Tara, dicha resolución desde el módulo de empaquetado
será comunicada con un INPE (con estado ‘R’, resuelta), incluyendo, en el campo opcional ‘Mesa
resolución’, la descripción de la estación de empaquetado desde la que se está resolviendo la incidencia
en ePAC.
Cuando se produce una incidencia por faltante o tara en mesa, sin que se pueda resolver porque no
existe la prenda requerida en el stock, deberá enviarse desde el sistema una notificación a EAI/CIS para
hacer constar dicha situación, ya que no se puede completar el pedido. El pedido que causa la
incidencia se cancelará y en esta situación, si el cliente no renuncia al pedido, lo normal es que dicho
pedido vuelva a entrar en el sistema sin la referencia que provocó el faltante. También es posible que
no lo acepte con lo que se recibirá la cancelación definitiva del pedido (ver requisito SGAEWMS-RF-105-
A-Cancelación y cancelación definitiva de pedidos)
Se ha de mantener un registro de aquellos pedidos cancelados desde el centro por incidencia que
puedan ser susceptibles de ser enviados nuevamente al almacén o cancelados definitivamente y tengan
alguna unidad asignada al pedido.
No se persistirán aquí los pedidos para los que no se picase nunca una unidad, por ejemplo, pedidos
unitarios que se cancelan por stock out, pedidos en los que todas sus unidades son stock out, o pedidos
que formando parte de un pedido consolidado se declara stock out para todas las líneas que forman
parte de él.
En este registro, y dado que el pedido cancelado puede ser un pedido consolidado, se mantendrá no
solo el pedido cancelado si no todos los pedidos cliente que hayan podido ser agrupados en él en un
primer momento. Además se han de mantener teniendo en cuenta que un pedido de cliente puede ser
cancelado en múltiples ocasiones desde el almacén, y por lo tanto este identificador no garantiza
referenciar a un único pedido.
Cuando se dé de alta un pedido se comprobará si existe en este registro, y en tal caso se marcará como
pedido cancelado previamente, para que puedan incluirse en un cuadrante separado de picking.
A diferencia de otros casos de uso, se tendrá en cuenta el stock bloqueado para evitar cancelar pedidos
que pueden ser gestionados en el almacén.
La operativa normal será la realización de un primer filtrado de las incidencias utilizando los filtros
definidos en SGAEWMS-RF-117-A – Gestión de incidencias y la posterior selección de entre estos de los
que se desean cancelar, si un pedido tiene varias incidencias y solo se seleccionase una se le mostraría
el error al operador indicando el pedido o los pedidos que no ha seleccionado completo en una tabla.
Una vez se pulse el botón y las incidencias sean todas las abiertas para el conjunto de pedidos el
sistema intentará cancelarlos todos pero indicará en un cuadro resumen cuántos son cancelables y
cuántos no de entre los seleccionados.
Si el operador desea no continuar se mostrará la pantalla previa, si cancela se cancelarán los posible
quedando todas las incidencias abiertas de los pedidos no cancelables en el mismo estado, aunque
alguna de ellas no pueda ser resuelta.
Si un pedido tiene dos o más incidencias de las cuales una puede ser resuelta con stock en ubicado o
bloqueado no se permitirá su cancelación.
El sistema de empaquetado permitirá declarar incidencias durante el proceso de PTL que podrán ser
gestionadas desde el sistema coordinador. Estas incidencias se crearán cuando durante el proceso de
PTL se detecten prendas faltantes. En el siguiente diagrama se detalla el flujo para este tipo de
incidencias:
1. Los pedidos podrán ser retirados del muro desde la aplicación de PTL. Cuando se realice
esta acción, se convertirá la incidencia de PTL seleccionada y se creará una nueva de
faltante reutilizando su QUI tal y como se detalla en el requisito SGAEWMS-RF-117.4.2-A –
Conversión a incidencias de faltante. El sistema de empaquetado imprimirá una etiqueta y
mandará una notificación al módulo coordinador indicando que la incidencia de PTL se ha
cerrado y que se ha creado una nueva de faltante.
2. El módulo coordinador permitirá imprimir una lista de picking presionando el botón
“Imprimir lista de picking” en la que se puede agrupar la información de distintas
incidencias (no se permitirán incluir incidencias de clasificación automatizada). El sistema
coordinador deberá comunicarse con el sistema de almacenamiento para solicitar la
creación de los cuadrantes de incidencias. Estas agrupaciones no serán persistidas en ningún
sistema, pudiéndose imprimir la información para estos pedidos nuevamente en una
agrupación distinta. Los detalles de la lista de picking se pueden encontrar en el requisito
SGAEWMS-RF-117.4.1-A – Lista de picking para incidencias de PTL.
Los pedidos que sean retirados del muro seguirá el flujo normal de pedidos con incidencia de faltante
pudiéndose resolver en mesa de empaquetado.
Las incidencias de PTL solo podrán ser resueltas desde el PTL clasificando las prendas faltantes. Cuando
estas sean resueltas, el módulo de empaquetado notificará al coordinador para así mantener la
información alineada.
La lista de picking impresa para incidencias tara, faltante o PTL contendrá los siguientes detalles para
cada una de las incidencias:
No se permitirá imprimir una lista de picking que incluya incidencias de clasificación automatizada, ya
que este tipo de incidencias no tienen ningún QUI asociado. Por tanto, se deshabilitará esta opción
cuando una incidencia de este tipo esté seleccionada. Sí se permitirán imprimir los QUIs de las
incidencias de faltante creadas a partir de una incidencia de clasificación automatizada
1. El muro que contiene el pedido se podría llevar a mesa de empaquetado en caso de que el
sistema esté configurado para ignorar las incidencias de clasificación automatizada.
2. Sacar el pedido del muro. Esta funcionalidad permitirá retirar los pedidos del muro y convertir
las incidencias de tipo CA a incidencias de tipo faltante reutilizando su QUI tal y como se
detalla en el requisito SGAEWMS-RF-117.4.2-A – Conversión a incidencias de faltante. El
Los pedidos con incidencia de tipo clasificación automatizada que sean retirados del muro convertirán
sus incidencias a tipo faltante y seguirán el flujo normal de pedidos con incidencia de faltante
pudiéndose resolver en mesa de empaquetado con permisos para resolverlos.
Las incidencias de clasificación automatizada solo podrán ser resueltas (cerradas) retirando el pedido
del muro o empaquetándolo (si está permitido). Cuando estas sean resueltas, el módulo de
empaquetado notificará al coordinador para así mantener la información alineada.
En estos casos, el módulo de empaquetado notificará al módulo coordinador mediante el mensaje COIN
que deberá cerrar la incidencia de PTL o clasificación automatizada y crear una nueva de faltante. Al
tratarse de un cambio de tipo de incidencia, no deberá enviar un nuevo ajuste de inventario hacia el
resto de sistemas.
Una expedición es una orden de trabajo destinada a agrupar pedidos para su salida del almacén. Como
las demás órdenes de trabajo, sus estados pueden ser los siguientes:
Para comenzar la gestión de una expedición en el almacén, deberá crearse una orden de trabajo de
expedición. Para ello, el sistema requerirá que se le asigne un nombre. Posteriormente, se notificará al
módulo de expedición la creación de dicha orden y a partir de ese momento la gestión de la misma
correrá a cargo del módulo de expedición. Al crear la orden de trabajo de expedición, su estado será
“Abierto” y permanecerá en dicho estado hasta su cierre.
Durante el proceso que se debe llevar a cabo para la expedición de un pedido, el módulo de expedición
únicamente notificará los cambios de estado de las cajas de cada pedido. Cuando una caja de pedido
sea asignada a un palé o a un bulto de expedición (dependiendo de si debe re-empaquetarse o no, lo
cual vendrá dado por el tipo de envío y de servicio), el estado del pedido se actualizará a “En
expedición”, mientras que el estado de las cajas que lo componen será “Asignado a bulto” o “Asignado
a palé” según corresponda. Si una caja asignada se desasigna, se recibirá una notificación de dicho
evento y el estado de la caja volverá a ser “Nuevo”.
Cuando el módulo de expedición notifique un cambio de estado de caja con el mensaje ESCA, se debe
notificar al módulo de empaquetado todos los cambios de estado de caja en expedición para que lo
tenga en cuenta en el proceso de cambio de tipo de caja. Será necesario notificar el CPEX con el estado
de asignada o no asignada.
Una vez que el módulo de expedición haya confirmado la cancelación del pedido, el sistema actualizará
el estado del pedido y de sus cajas a “Cancelado”.
Una vez se haya llevado a cabo el proceso de expedición en el módulo destinado a tal efecto, el sistema
recibirá toda la información sobre los bultos de expedición (si aplica) ,los palés expedidos y los datos del
transporte (Nombre y apellidos de transportista, identificación de transportista, matrícula de vehículo, fecha
y hora de entrada del vehículo en el almacén) . En caso de ser un pedido que requiera re-empaquetado, se
recibirá la asociación de cada caja de pedido al bulto de expedición al que se ha asignado. Igualmente,
Ya que el módulo de expedición desconoce cuál es el contenido de cada caja, pero sí es una
información que posee eWMS (ya que la ha recibido previamente del módulo de empaquetado), el
sistema deberá asociar esta información junto con la recibida del módulo de expedición para notificar a
CIS qué referencias (y la cantidad de cada una) se están expidiendo en ese momento. También se usará
la información de transportista y de tracking (tanto de pedido como de devolución) para asociarla a
cada pedido. Además, cuando existan códigos datamatrix persistidos y asociados a los SKU’s de los
pedidos que se van a expedir para el caso de la fiscalidad rusa, se incluirán en el mensaje de
notificación de expedición hacia los sistemas externos. Dichos datos serán persistidos según se define en
el requisito SGAEWMS-RF-116-A – Empaquetado de pedidos y se incluirán en la notificación de la
expedición de la siguiente forma:
De la información leída de un código datamatrix, se deben enviar los valores GTIN, ISN y el código
datamatrix completo (DMCode); este último es necesario para la fiscalización en Kazajistán, pero se
enviará siempre que esté disponible tanto en pedidos de rusia como de kazajistán. El GTIN y ISN son
subcadenas del código datamatrix persistido. Se define sobre el siguiente ejemplo de código único (CU)
leído de un código datamatrix de Rusia, las subcadenas a obtener para notificar:
010461004304001521G7sz5OZemDKkZ\u001d2406402\u001d91ffd0\u001d9236KLfhSYqiY79MXgB/
KEUxkLBm9d0B5dBeXW+0glJK03ux5v/yLN/epxFpbH7iz+ZvEqKjBDfn4fgmIGvLzfKg==
Se construirá un mensaje con toda esta información de la mercancía expedida para enviar a EAI/CIS.
Deberá asegurarse que los pedidos notificados están en estado “En expedición” para expedirlos. De no
ser así, no se incluirán en la notificación a EAI/CIS.
El sistema deberá contrastar que la mercancía expedida se corresponde con la picada. Si no es así, se
enviarán las variaciones de stock pertinentes. Por ejemplo, si se expide una prenda que no ha sido
picada, se enviará un ajuste positivo sobre el estado disponible para esa referencia y se marcarán para
auditar las posiciones que contengan dicha referencia.
Al recibir el cierre de una orden de trabajo de expedición, el sistema actualizará el estado de la misma
a “Cerrado”. Igualmente, actualizará el estado de los pedidos que componen la expedición a
“Expedido”. Si existe algún cuadrante u oleada cuyos pedidos hayan sido todos expedidos, actualizará
su estado a “Cerrado”. Con el cierre se informa al sistema externo (EAI/CIS) con la información de los
pedidos incluidos en la expedición, agrupados por cadena. Por cada pedido se informa de las cajas que
lo componen, bulto de tienda en caso de ser incluido en uno, y los artículos/unidades dentro de cada
Puede ocurrir que se reciba el cierre sin ninguna información sobre palés, bultos de expedición y cajas
de pedido. En este caso, el sistema se limitará a actualizar el estado de la orden de trabajo de
expedición a “Cerrado” y no enviará ninguna notificación. Esto puede darse porque los operarios del
almacén se hayan dado cuenta de que la expedición no era correcta y quisieron desecharla para crear
una nueva.
En el momento en que se cierra una expedición, si todos los pedidos son de la misma cadena, se
establecerá ésta, como cadena de la orden de trabajo.
La fecha que se notificará como fecha de cierre de expedición no será la fecha notificada por el sistema
de expedición en el cierre de la orden de trabajo, si no la fecha hora real en el momento en el que el
eWMS procese el cierre y construya el mensaje para enviar a los sistemas Ecommerce. Dicha fecha será
en formato UTC.
El sistema deberá poder mostrar al usuario el estado de las expediciones y su detalle. Para cada
expedición, mostrará su identificador, Cadena, descripción, tipo (estándar o diferida), su fecha de
creación, el estado en el que se encuentra, la fecha de confirmación si procede, el tipo de envío, el
transportista que se encargará de repartir los pedidos expedidos así como el número de pedidos
expedidos, el número de cajas de pedido expedidas y si se trata de un envío con reempaquetado, el
número de bultos expedidos y el número de tiendas incluidas. En caso de tratarse de una expedición sin
reempaquetado, tanto el número mostrado para los bultos expedidos como el número de tiendas
incluidas será cero.
Al seleccionar una expedición en estado “Cerrado”, se mostrará qué ruta o rutas de transporte tiene
asociadas así como el tipo de servicio y el país que cubre cada una de ellas. También mostrará número
de pedidos, cajas de pedido y bultos de expedición por ruta. Se podrá filtrar por el identificador de la
orden de trabajo, el tipo de orden de expedición, la Cadena, transportista (estos cuatro de arriba abajo
en este orden), fecha de creación de la orden de trabajo y por su estado.
Para las expediciones de tipo diferido no podrá mostrarse cierta información, como la ruta o el tipo de
servicio, por lo que dichos campos quedarán en blanco.
Además, se añadirá una nueva columna en la tabla (aparte de la de tipo de expedición) a la derecha de
todo. Dicha columna será “Estado previo” (Previous status), en la que se mostrará para todas aquellas
órdenes de expedición de tipo diferido el último estado que tenía el pedido antes de expedirse
(Empaquetado o En expedición).
Podrá filtrarse por todos estos conceptos (incluyendo el tipo de orden de expedición cuyo filtro se
situará debajo del filtro de Id. y nombre de expedición) para poder hacer un mejor seguimiento de una
referencia.
Deberá incluirse una nueva pestaña en el apartado de “Detalle de seguimiento” para visualizar toda la
documentación recibida relativa a la expedición. El sistema podrá recibir documentación para alguna de
las expediciones o combinaciones expedición y tienda de destino. El mensaje con la información será
recibido en el módulo coordinador y podrá incluir tanto el documento como la URL desde la que se
puede descargar.
A la hora de recibir los mensajes con la documentación por parte de sistemas externos, deberá
comprobarse que la fecha de generación de mensaje es más reciente que la información persistida (si
ya se ha recibido esta información previamente). De ser así, se actualizará la información que posee el
sistema, si no, se descartará la información recibida.
La información que se mostrará en la nueva pestaña deberá satisfacer los siguientes requisitos:
Las etiquetas de caja de pedido se usan para identificar cada caja generada desde el módulo de
empaquetado para un pedido y se pegarán en el exterior de dichas cajas.
Las etiquetas de devoluciones se usan para facilitar al cliente la devolución del pedido e irán dentro de
cada caja generada en el módulo de empaquetado.
La impresión de ambos tipos de etiquetas será gestionada por el módulo de empaquetado, en particular
por la librería GLS. El sistema deberá soportar que estas etiquetas sean de diferentes tipos: ZPL y SVG.
Estos tipos vendrán indicados en el mensaje de información de etiquetas generado desde TEC.
Para ambos tipos, además de las propias etiquetas, se recibirá qué transportista ha generado las
etiquetas (tanto la de caja de pedido como la de devolución) y el código de seguimiento asociado a
cada una. Deberá persistirse, a nivel pedido, el transportista que lo repartirá y el transportista de
devolución para notificarlo en el mensaje de expedición.
Si no se han recibido etiquetas de devolución para un pedido, pero desde el módulo de empaquetado se
han notificado códigos de seguimiento de devolución para cada caja (por haber usado etiquetas de
devolución pre-impresas), el sistema, al expedir dicho pedido, deberá notificar dichos códigos de
seguimiento de devolución para cada caja del pedido, pero no notificará transportista de devolución, al
no haberlo recibido de sistemas externos.
Si se recibe una actualización de la dirección de envío del pedido, y el pedido está en un estado en el
que se permite dicha actualización, deberán invalidarse las etiquetas y la información de transportista
(tanto de pedido como de devolución).
El sistema podrá recibir para cada pedido la ruta en la que deberá ser expedido obligatoriamente. Dicha
ruta vendrá representada por un identificador único (especificada en un Maestro de Rutas externo y no
mantenido por SGA) y deberá ser asociada al pedido para su posterior proceso.
Por configuración, podrá decidirse si usar la ruta recibida para el pedido o no. En caso afirmativo, se
usará el Maestro de Rutas definido para la gestión de las mismas. De lo contrario, se descartará la ruta
recibida y se procesará el pedido como hasta ahora (es decir, se le asignará una ruta sugerida y se usará
el esquema de rutas tradicional y propio de SGA).
Al igual que con los tipos de servicio, deberán existir rutas de backup que se usarán si la configuración
de Maestro de Rutas está activa y no se recibe la ruta asignada al pedido por parte de sistemas
externos. En dicho caso, se asignará al pedido la ruta de backup correspondiente en base al tipo de
envío (tienda, domicilio), país, tipo de servicio y tipo de servicio genérico.
Al igual que ahora, si es el propio sistema quien calcula la fecha máxima de expedición, se consultarán
las salidas para la ruta de backup asignada al pedido y se obtendrá dicha fecha en base a los tiempos de
proceso en el almacén establecidos.
La ruta para cada pedido podrá recibirse tanto con la información de transportista o con las etiquetas
asignadas al pedido. La ruta recibida con las etiquetas tendrá prioridad y sobrescribirá la ruta que se
pudiera haber recibido con la información de transportista si son diferentes.
En caso de haber recibido una ruta con la información de transportista, pero no con las etiquetas
asociadas al pedido (si es que se reciben dichas etiquetas), el sistema deberá comprobar si el tipo de
servicio es el mismo. En ese caso, se dejará como válida la ruta recibida con la información de
transporte. Sin embargo, si los tipos de servicio son diferentes, deberá asignarse la ruta definida como
backup a dicho pedido.
Si no se recibe la ruta de sistemas externos y no existe una ruta de backup válida para ser asignada, se
descartará el procesamiento del pedido alarmando dicho evento.
Al olear el pedido, al igual que se hace ahora, se notificará al sistema de empaquetado la ruta asignada
al pedido (el identificador de la ruta, si se está usando el Maestro de Rutas). De esta forma, el sistema
de empaquetado podrá imprimir la etiqueta o la documentación necesaria aportando la información de
ruta si es necesario.
De la misma forma, cuando un pedido termine el proceso de empaquetado y deba ser notificado al
sistema de expedición, se hará indicando la ruta en la que debe ser expedido. El sistema de expedición
será el encargado de asegurar que el pedido sale del almacén asignado a la ruta correcta.
Una vez se cierre la expedición, se deberá notificar a los sistemas externos los pedidos que salen del
almacén, indicando para cada caja del pedido, al igual que el tipo de servicio, la ruta en la que se
expide.
El eWMS proporcionará una nueva pantalla desde la que se podrá hacer el seguimiento de pedidos por
estado.
En este informe se visualizará el número de unidades o de pedidos, según se seleccione, por estado, de
los pedidos cuya fecha (de empaquetado, de creación, de compra...) sea hasta siete días anterior a la
filtrada en la consulta.
Por ejemplo si se buscasen los pedidos empaquetados hasta el 10 de enero, mostraría el estado de los
pedidos empaquetados desde el 3 de enero en ocho columnas diferentes, y en este caso nunca
mostraría pedidos en estados previos a empaquetado pues no tendrían fecha de empaquetado.
Además se mostrará una columna adicional con la suma de todo el período.
Los posibles estados que se considerarían para este informe y mostrados en este orden serían:
1. Total: Sumatorio de los estados de los pedidos del día en cuestión. (Backlog +
Procesados=Total)
2. Backlog: Pedidos en los estados descritos a continuación como Pendiente, Picking, Picado, En
PTL, Con incidencia activa y Empaquetando.
3. Procesados: Pedidos en los estados descritos a continuación como Empaquetado, En
expedición, expedido y cancelado.
4. Pendiente: Pedidos pendientes y Preseleccionados.
5. Stock pendiente: Pedidos en estado pendiente transferencia Picking, Transferencia Picking
Recibida, Transferencia Picking Informada, PT Parcialmente Informada y trans. picking
parcialmente recibida.
6. Picking
7. Picados: Picados o cancelando para reempaquetar.
8. En PTL: Pedidos en cualquiera de los estados de PTL, incluidos los relativos a PT.
9. PTL Finalizado: PTL Finalizado: El pedido fue clasificado en un Muro. Incluye los estados PTL
finalizado y PT clasificado en PTL.
10. Empaquetando: Pedidos en estado Empaquetando y PT Empaquetando.
11. Empaquetado
12. En expedición
13. Expedido
14. Con incidencia activa: Se mostrarían aquí todos los pedidos que tengan alguna incidencia no
cerrada.
15. Cancelado: Cancelados, cancelando o cancelados confirmados o incorrecto.
16. Total activos: Todos los pedidos no expedidos o cancelados. (Backlog + Empaquetados + En
Expedición).
El sistema podrá recibir para cada pedido una factura asociada que deberá ser impresa en el módulo de
empaquetado.
Dicha factura será notificada mediante mensajería por parte de un sistema externo y estará asociada al
pedido mediante su código. En el mensaje se especificará también la fecha de creación de la factura y
los datos a imprimir comprimidos y codificados. El formato de la factura, aunque no se indique en el
propio mensaje, será PDF.
La factura puede ser recibida en cualquier momento, incluso antes de recibir el pedido. Se descartará
dicha factura si el pedido asociado se encuentra en estado “empaquetándose” o posterior. También se
hará lo mismo para cualquier estado no activo.
Para todos los estados activos anteriores, si se recibe la factura más de una vez, deberá comprobarse
que la fecha de generación de la misma es posterior a la última factura persistida por el sistema. De no
ser así, se descartará la factura recibida y se seguirá tomando como válida la factura con la fecha de
generación más actual. Si la fecha de la nueva factura es posterior a la antigua, se descartará la antigua
y se tomará como válida la última recibida. Cada pedido sólo podrá tener una única factura A4 válida.
A continuación se exponen los casos en los que se podría recibir una nueva factura para un pedido:
1. Con la generación de un nuevo pedido
2. Pedido cancelado por rotura de stock y que vuelve a ser generado
3. Modificación de la dirección de envío o de facturación por parte del cliente
4. Pausado y modificación (o no) de un pedido
Si un pedido es cancelado, ya sea por parte del cliente, por stock out o por pausado, se invalidará la
factura persistida en ese momento si es que el pedido tenía alguna asociada.
Las facturas han de mantenerse al menos hasta la expedición del pedido y deberá poder configurarse el
tiempo de caducidad desde el momento de la expedición.
El sistema permitirá tratar de forma excepcional varios pedidos de un mismo cliente para que sean
enviados de forma conjunta.
La gestión de los pedidos que se consolidan queda fuera del SGA, y siempre vendrá dado de los sistemas
de ecommerce.
En la información del alta de pedido se incluirá si el pedido es o no un pedido consolidado, los pedidos
consolidados incluidos y su código de devoluciones y a nivel de cada una de las líneas se incluirá el
pedido consolidado para que se pueda agrupar en la factura.
El pedido se tratará a todos los efectos como un pedido normal excepto en el proceso de empaquetado
donde las etiquetas y facturas diferirán de las de los pedidos no consolidados.
1. Estado. Se podrá seleccionar cualquier estado de pedido. Por defecto estarán seleccionados los
estados activos dentro del almacén.
2. Fecha. Se podrá buscar por fecha de compra, o fecha máxima de expedición o fecha de
compromiso de almacén.
3. Tarjeta regalo. Funcionará mediante un check. En el caso de que esté activo, se buscarán
pedidos con tarjeta regalo, en caso contrario, se buscará por sku. El filtro de sku y el check de
tarjeta regalo no podrán ser aplicados al mismo tiempo. Si se selecciona el filtro de sku se
limpiará y sombreará el filtro de sku.
4. Unidades. Se podrá indicar si el número de unidades del sku o tarjetas regalo dentro del pedido
es menor, igual o mayor a una cantidad dada.
5. Cuadrante. Se permitirá al usuario buscar por cuadrante.
6. Ruta. Se permitirá buscar por rutas de manera idéntica al del seguimiento de pedidos descrito
en SGAEWMS-RF-106-A.
7. País. Se permitirá buscar por el país del pedido.
8. Tipo pedido. Se buscará por pedidos de packing, picking o tailoring. Se deben de mostrar los
tipos ordenados alfabéticamente.
9. Pendientes de asignar. Será un check que por defecto estará sin marcar. Si está marcado en el
momento de la búsqueda sólo se mostrarán los SKU’s de aquellos pedidos que cumplan la
siguiente condición: UNIDADES_ASIGNADAS-UNIDADES_DESASIGNADAS sean menores que
UNIDADES_TRANSFERIDAS.
Se permitirá ver datos de búsquedas realizadas de manera sucesiva mediante un check de acumulación
de resultados.
En el caso en el que el filtro de sku esté vacío y el check de tarjeta regalo no esté marcado, se
mostrará un mensaje en donde se mostrará al usuario el mensaje “Se debe introducir un SKU” / “A SKU
must be introduced”.
El botón de exportar proporcionará en csv los datos de la tabla añadiendo las fechas de alta,
empaquetado y expedición. Además habrá en el formulario otros dos botones. Uno será para ir a los
detalles del pedido y otro para mostrar el informe de stock con el sku de la línea seleccionada. Así
mismo, si se hace doble click en una de las tuplas de la tabla, se llevará al usuario a la pantalla de
detalles de pedido.
La necesidad de esta funcionalidad nace de la limitación que tienen algunas tiendas para asumir el
almacenaje de todos los pedidos que llegan en épocas pico. Se deberá contemplar la funcionalidad no
solo para las tiendas, sino también para cualquier otro tipo de localización.
En caso de que solamente se limitara el número de pedidos que se pudiesen expedir, al poderse
acumular muchos pedidos en la zona de expedición, podría concurrir a un problema en la operativa del
almacén. Es por ello que se contempla también limitar los pedidos que se pueden olear.
Al formulario principal con el que se gestionará las capacidades se accederá desde el menú de pedidos.
El nombre de la opción será “Capacidades por tienda / Capacities by store” y el usuario podrá acceder
si tiene permisos para ello.
1. Ruta. Se podrá filtrar por las rutas a las que pertenecen las tiendas. Si existe una capacidad
definida para una tienda, pero ésta no está configurada para que no salga con ninguna de las
rutas seleccionada, no aparecerá filtrada.
2. País. Al que pertenece la tienda.
3. Tiendas. Podrá filtrarse por uno o varios códigos de tienda separados por comas.
1. Tienda.
2. Límite expedibles. Indica el número máximo de pedidos que se podrán expedir.
3. Expedidos. Contador que se irá incrementando a medida que se vayan expidiendo pedidos de
cada tienda. Los pedidos expedidos diferidamente no incrementarán el contador.
4. En expedición. Refleja el número de pedidos de la tienda que se van asignando a palé o a
bulto. En caso de que todas las cajas de un pedido de una tienda fuese desasignado, este
contador se decrementará. Un pedido contará como asignado cuando se asigne una de sus
cajas.
5. Límite oleables. Se indica el número máximo de pedidos que se pueden olear.
1. Modificar límites. Con esta opción se podrá modificar los límites de una fila.
2. Importar CSV. Se permitirá modificar límites de líneas existentes o añadir nuevas.
3. Resetear expedidos. Pone, para las filas seleccionadas, el contador de pedidos expedidos a 0.
4. Resetear oleados. Al igual que el botón anterior, pero para el contador de oleados.
5. Eliminar. Borra la fila seleccionada, dejando la tienda sin restricciones para olear y expedir.
6. Todos. Existirá un check para seleccionar o deseleccionar todas las filas del formulario.
Al verse modificados los límites, podría darse la casuística de que el número de pedidos ya expedidos
más el número de los asignados a expedición en ese momento, sea mayor que el límite de pedidos que
se han configurado. Para este caso, el sistema limitará los pedidos que se podrán asignar a bulto o a
palé, pero permitirá expedir los pedidos que ya han sido asignados.
De forma análoga, podrá ocurrir lo mismo que con los límites de pedidos oleables, lo que hará el
sistema es no permitir olear más pedidos de esa tienda.
El sistema deberá dar la posibilidad de resetear los contadores de pedidos expedidos y pedidos oleados
para cada una de las tiendas cuando el usuario lo necesite.
Una vez seleccionadas una o varias filas del formulario, se pedirá confirmación para resetear cualquiera
de los dos contadores:
Si el usuario confirmase el reseteo del contador, éste se pondrá a cero y se permitirá continuar oleando
o asignando a expedición de las tiendas correspondientes.
Existirá una opción en la botonera para eliminar las capacidades configuradas para 1 o n tiendas. Al
menos uno de los elementos de la tabla deberá ser seleccionado. En caso de que no se seleccionase
ninguno, se mostrará un popup informativo con el texto “Debe seleccionarse, al menos, una fila / At
least one row must be selected”.
Una vez confirmada afirmativamente, el popup desaparecerá y se recargará la tabla con la nueva
información.
El sistema permitirá la expedición de los llamados pedidos “empantanados” (pedidos que físicamente
han abandonado el centro en un palé de expedición pero que no han sido expedidos de forma lógica y
que siguen en un estado activo de almacén en el sistema) sin tener que realizar toda la operativa
habitual desde el empaquetado en adelante.
Existirá un nuevo tipo de orden de trabajo llamado Expedición diferida (Deferred shipment). Este nuevo
tipo de orden de trabajo no podrá ser creada como tal por el propio usuario, sino que será el sistema
quien la cree automáticamente tal y como se definirá en el requisito SGAEWMS-RF-131.3-A –
Procesamiento de pedidos para expedirlos de forma diferida.
Será necesario incluir nuevos filtros y columnas en las pantallas de Órdenes de expedición y Detalle de
expediciones para tener en cuenta el nuevo tipo de orden. Dichas modificaciones se especifican en el
requisito SGAEWMS-RF-123-A – Seguimiento de expediciones.
Existirá un nuevo estado de pedido llamado “Expedido diferido” (Shipped deferred). Los pedidos que se
expidan usando la funcionalidad de expedición diferida pasarán a estar en dicho estado.
Este estado se considerará como un estado final y no activo, igual que el estado “expedido”, por lo que
no se tendrá en cuenta para notificar unidades de este tipo de pedidos en una sincronización de stock.
Las unidades de los pedidos expedidos de forma diferida deberán considerarse como expedidas en los
informes de unidades y de facturación.
Deberá poder filtrarse por el nuevo estado en todas aquellas pantallas en la que esté incluido el filtro
de estado de pedido (por ejemplo en Seguimiento de pedidos).
Para poder realizar la expedición de pedidos empantanados se dispondrá de una nueva pantalla que
colgará del menú de Expedición. El título será “Expedición diferida” y se propone el siguiente mockup
para su desarrollo:
En dicha pantalla se podrán agregar pedidos que se quieran expedir de forma diferida. Para poder
añadirlos, se podrá introducir el código de pedido de almacén, el código de pedido de cliente o
cualquiera de los códigos de las cajas que forman el pedido en cuestión. Al introducir un nuevo pedido,
se comprobará si es posible agregarlo en función de su estado. Sólo los pedidos en estado
“Empaquetado” o “En expedición” podrán agregarse. Si no se cumple esta condición, se informará al
usuario de que no ha sido posible agregar el pedido y dicho pedido se descartará:
Existirá un botón “Limpiar” que al pulsarlo provocará que se eliminen de la lista todos los pedidos que
hayan sido agregados previamente. También al cerrar la pantalla se perderá la información de los
pedidos que se mostraban, por lo que al abrirla de nuevo siempre aparecerá vacía.
Una vez se han agregado todos los pedidos que se quieren expedir de forma diferida, podrán expedirse
pulsando el botón “Expedir”. Al pulsar dicho botón se llevarán a cabo las siguientes acciones:
Se mostrará un popup de confirmación para llevar a cabo la expedición diferida de los pedidos
que se muestran por pantalla. Si se pulsa Aceptar se continuará con la operación. Si se pulsa
cancelar se interrumpirá el proceso y mostrarán de nuevo por pantalla los pedidos que habían
sido agregados previamente:
Se comprobará que todos los pedidos están en estado Empaquetado o En expedición. Es posible
que alguno de ellos haya cambiado de estado desde que fue agregado, por lo que es necesario
descartar aquellos que ya no cumplan las condiciones necesarias para poder ser expedidos de
esta forma.
Para aquellos pedidos que estén en estado “En expedición”, deberá enviarse un mensaje al
módulo de expedición para que rompa la asociación que exista entre las cajas que componen
dicho pedido y los bultos o palés a los que estén asignados. No se recibirá confirmación por
parte del módulo de expedición de si se ha podido llevar a cabo o no dicha desasignación. El
sistema sólo debe comprobar que el estado del pedido es el adecuado para poder expedirlo (si
el pedido ya ha sido expedido previamente no debe expedirse de nuevo).
Se agruparán los pedidos por el transportista con el que deben expedirse. Para ello se usará el
id_empresa asociado al tipo de servicio de transportista que tiene el pedido. Haciéndolo de esta
forma, no influirá que el Maestro de Rutas esté activado o no.
Una vez agrupados, se creará una orden de trabajo de expedición diferida para cada
agrupación, en la que se incluirán los pedidos de cada grupo. El nombre de dichas órdenes de
trabajo de expedición seguirá el siguiente formato: DS_YYYYMMDD_IDEXPEDICION. Para poder
generar dicha orden, se usará un código de palé configurable mediante un parámetro de
configuración (deferred.shipment.virtual.pallet) al que se asociarán todas las cajas de pedido
que se vayan a expedir. Dicho código de palé “virtual” será el que se use siempre para este tipo
de expediciones.
Debe tenerse en cuenta que se pueden cerrar al mismo tiempo expediciones desde el módulo de
expedición, por lo que el procesamiento de ambos tipos de órdenes de expedición debe ser
sincronizado. El sistema debe comprobar, para ambos tipos de expedición, si algún pedido ya
fue expedido previamente en una orden que se cerró al mismo tiempo y descartarlo para no
expedirlo de nuevo.
También debe ser sincronizado el cierre de este tipo de expediciones con las operaciones de
Reinicio o Desempaquetado de un pedido.
El sistema generará un OrdersShipped por cada una de las agrupaciones incluyendo la misma
información que se genera hoy en día para una expedición estándar. En este caso sí debe
tenerse en cuenta si está activado o no el Maestro de Rutas. De estar activado debe incluirse la
ruta para cada pedido en el mensaje de expedición.
Los pedidos que se expidan de esta forma pasarán al estado “Expedido diferido” definido en
SGAEWMS-RF-131.2-A – Estado de pedido expedido diferido.
Una vez cerradas estas expediciones, se mostrará una pantalla resumen con los pedidos que se
han podido expedir y los que no:
No será posible expedir de forma diferida sólo ciertos pedidos seleccionándolos en esta pantalla (de
hecho la selección en la tabla debe estar inhabilitada). Siempre se intentarán expedir todos los pedidos
que se están mostrando.
Las órdenes de expedición generadas aparecerán tanto en la pantalla de Órdenes de expedición como
en la de Detalle de expediciones, mostrando la información de cada una de ellas.
El sistema permitirá la configuración de una lista de los posibles tamaños de muros de clasificación de
pedidos que existan en un almacén.
La inclusión o no de dicho parámetro afectará a la ventana modal que se muestra para crear una oleada
una vez se seleccionan los pedidos para los que se quiere lanzar el picking (SGAEWMS-RF-110-A –
Creación de oleadas). Si no se incluye, la ventana será igual a la actual:
Si el parámetro está incluido y tiene valores establecidos, entonces la pantalla será similar a la que se
propone cuando el tipo de ola seleccionada sea Medios PTL:
Además habrá un último valor que se mostrará siempre al final de los valores que se incluyan en el
parámetro de configuración que será “Otro tamaño” (Other size). Si se selecciona dicho valor la
pantalla cambiará y se mostrará de la siguiente forma:
Permitiendo introducir un valor al usuario para definir el número de pedidos por cuadrante de forma
alternativa.
Al crear la orden se tomará el valor seleccionado en el combo o el introducido por el usuario en caso de
haber seleccionado “Otro tamaño” para dividir las oleadas en cuadrantes que contengan el número de
pedidos especificado.
Esta opción estará presente en la ventana modal que se muestra al crear una oleada una vez se
seleccionan los pedidos para los que se quiere lanzar el picking (SGAEWMS-RF-110-A – Creación de
oleadas) únicamente cuando se seleccione “PTL medios” en el tipo de oleada.
Debido a la integración que se realizará por parte de algunas Cadenas con el Marketplace ruso de
LaModa, será necesario identificar de forma única las prendas de cada pedido con un código, por lo que
a nivel sistema se requiere facilitar dicha gestión.
Para ello, los pedidos que se reciban de dicha plataforma de venta externa se recibirán partidos por
unidad, habiendo una línea de pedido por cada unidad del pedido. Esta funcionalidad ya se soporta a
día de hoy, pero además en dichas notificaciones de pedidos se incluirá para cada una de las líneas (por
tanto para cada unidad) un identificador externo único que deberá ser persistido por el sistema
(externalOrderItemId).
Dicho valor deberá ser notificado al sistema de empaquetado cuando el pedido sea oleado para su
posterior gestión en dicho sistema.
El protocolo utilizado por el servicio es HTTP basado en REST, se adjunta el API el repositorio
https://axinic.central.inditex.grp/bitbucket/projects/WDOBATCH/repos/main/browse/API/EWMS-
WDO-API-v1.4.yaml
No se permite realizar más de una petición de optimización por almacén-cadena en paralelo, el servicio
atenderá a la primera en procesar y a las siguientes contestará con un código de error mientras no
termine con la actual. Cuando el servicio notifique el fin del proceso de petición de optimización en
curso, se podrá solicitar la siguiente. EWMS debe gestionar las peticiones realizadas y el estado en que
se encuentran, tanto para no solicitar una nueva mientras hay una en activo como para procesar las
actualizaciones de la optimización como observador.
Es necesario conocer cuando una petición de optimización que está proceso no será válida porque el
escenario inicial ha cambiado, bien porque una cantidad de pedidos han sido modificaciones o por
cambios imprevistos en el stock.
Se definen los siguientes parámetros que controla la salud del proceso de una petición:
Tiempo medio de petición: es el tiempo máximo que tarda una petición en realizar los cálculos
de la optimización. Una petición no debería tardar más de este tiempo configurable, si se
supera se obtiene el resultado. Será un parámetro de configuración por BBDD cuya magnitud
está expresada en minutos; la clave es waveOptimisationAverageRequestTime; el valor por
defecto es 10.
Tiempo límite de petición: es el tiempo máximo en el que se asume que WDO ha entrado en un
bucle infinito y se considera que el servicio necesita ser reinicia. Si se supera se genera alarma
y traza de ERROR informando. Será un parámetro de configuración por BBDD cuya magnitud está
expresada en minutos; la clave es waveOptimisationHangTime; el valor por defecto es 30.
Xpress
Optimization request
1 Submit wave
WDO w ave ID
HTTP w eb service
WDO listener
HTTP w eb service
EWMS
Call-back Xpress
2 Receive notification
WDO w ave ID
WDO algorithm
EWMS realiza la petición POST al servicio, y obtendrá el identificador del trabajo en la respuesta. Es
necesario validar que el código HTTP de la operación es correcto según la documentación del API. Se
corresponde con el método POST del endpoint /optimisation/wave . Se debe almacenar el código del
trabajo en la respuesta del servicio, para poder realizar el seguimiento y obtener los resultados en una
invocación posterior. Tan pronto se realiza la petición de optimización, si el código de respuesta es
correcto, EWMS persistirá la petición en estado pendiente.
Los parámetros de configuración son los de la tabla inferior, se marca aquellos que pueden ser
modificador por el automatista:
PARAMETRO MODIFICABLE
Tamaño oleada (pedidos máximos) SI
Porcentaje de unitarios a incluir en cuadrantes de medios SI
Límite de unidades para cuadrantes monopedidos SI
Número total de mesas de packing SI
Número total de mesas de packing con impresora SI
Número de pickers SI
Capacidad trolley prenda colgada SI
Capacidad carro paquetería SI
Capacidad carro zapatos SI
Tamaños muros PTL (separado por comas) SI
Unidades de pedido para cuadrante mono SI
Porcentaje unitarios en cuadrante de medios SI
Tiempo medio respuesta WDO NO
Tiempo máximo respuesta WDO NO
Tamaño caché soluciones de WDO NO
Cantidad de pedidos a optimizar (límite máximo a enviar) NO
Tamaño de muro por tipo SI
Renovar optimización NO
Área-stock a descartar SI
Tener en cuenta capacidades de tienda SI
Por temas de retrocompatibilidad, si un almacén solo reparte una cadena, no será necesario la gestión
de los parámetros añadiendo el sufijo. El sistema buscará el parámetro con el sufijo de cadena
(waveOptimisationMonoQuadrantLimit.retailer.1), en caso de no encontrarlo buscará el parámetro sin
sufijo (waveOptimisationMonoQuadrantLimit)
EWMS podrá limitar la cantidad de pedidos que se envía a WDO en la petición (parámetro de
configuración Cantidad de pedidos a optimizar). Si existe un límite, el sistema solo incluirá los N
pedidos más prioritarios por fecha de máxima de expedición y en caso de igualdad por tipo de prioridad
de pedidos. Los SKUs enviados en la petición de son los que existe demanda, por lo que no se enviará
información de posiciones ni de picking pendiente de SKUs que no formen parte de la demanda.
Los pedidos que se enviarán a WDO serán aquellos que se encuentren en estado PENDIENTE por defecto.
Si el usuario configura el parámetro Incluir preseleccionados con valor true, se incluirán también los
pedidos en estado PRESELECCIONADO.
Si el parámetro de capacidades de tienda está activado, se agruparán los pedidos antes de enviar a
WDO por la tienda de envío (en el caso de pedidos con envío a tienda). Si la tienda tiene la capacidad
configurada, solo se incluirán por cada tienda los pedidos que pueda asumir en ese momento ordenados
Aquellos pedidos que necesiten hacer uso de impresora, tendrán el valor de impresión verdadero. Los
pedidos que necesitan hacer uso de la impresora son los que por sus características reaccionan a las
reglas de impresión de EPAC. Como actualmente es un proceso acoplado, se consideran:
Ticket A5
Mensaje regalo
Si el estado actual de la optimización es Completo y se realiza una petición nueva bajo demanda (desde
la consola), se debe invalidar optimización válida y la actual “activa” será la nueva recién creada.
Actualizando la interfaz de usuario si fuese necesario. Debe controlarse en todo caso el código de
respuesta de la petición; si el servicio de WDO no fuese capaz de procesar una nueva optimización, no
se invalidará la actual en caso de ser completa; deberá dejarse traza en LOG indicando tal situación.
Por ejemplo:
Si la bolsa de pedidos pendientes es la misma y no ha habido variaciones de stock negativas, el
resultado de la anterior optimización sigue siendo válido por lo que no se realizará una nueva petición.
Pero si entre la petición y la respuesta del servicio, se produce una variación de stock negativa, el
escenario será inválido,
EWMS ofrecerá un servicio REST con método POST en el que recibirá del servicio el resultado de la
actual petición. Cuando el servicio notifique que la petición ha terminado, EWMS actualizará el estado
de petición según el estado que indique el servicio. Si la optimización tiene estado válido, se solicitará
el resultado de la petición al servicio.
Hay que tener en cuenta que el servicio solo almacenará los resultados de la última optimización de la
oleada por cada almacén, por lo que no se debe realizar una nueva petición mientras no se obtengan los
resultados de la última petición (en caso de que el escenario inicial siga siendo válido) ya que se
perderán. Se debe sincronizar está acción, ya que es posible que se desencadene por la notificación de
WDO o por el watchdog, si existe una petición GET en curso para la obtención de resultados de la misma
petición, no se solicita de nuevo.
Si el estado de la petición es Fallida, se inicia una nueva optimización realizando la petición a WDO en
estado Pendiente.
SI se produce una sincronización de stock, se considera que el escenario del stock es invalido.
Si se produce una recarga de pedidos para olear (reload de la consola), se considera que el escenario de
Pedidos es inválido.
Si se modifican los parámetros de configuración de la oleada, se considera que el escenario es inválido
SI se produce una oleada, se considera que el escenario es inválido
Deberá gestionarse un escenario por cadena, así como los eventos que genere solo afectarán a las
optimizaciones en curso de la cadena.
A efectos de diseño, como en esta fase no se permite cancelar una petición a WDO, se puede considerar
como un monitor que periódicamente compruebas las condiciones de la optimización en curso.
Esta funcionalidad estará disponible en aquellos almacenes configurados para hacer uso de WDO y poder
crear oleadas optimizadas.
A la hora de olear, el usuario podrá seleccionar los tipos de cuadrantes que desea olear.
El sistema creará 1 órden de trabajo para los tipos de cuadrantes unitario, medio, mono. El tipo
de orden de trabajo será (2) - “REPARTO ECOMMERCE”. Se solicitará al usuario introducir la
descripción, ofreciendo el siguiente valor por defecto “DD/MM HH:MM WDO [ID_WDO]”. Los
valores DD MM y HH, representan el día del mes, el mes y la hora en formato 24, que deberá
sustituirse. Si se trata de un almacén multicadena, la descripción por defecto será “DD/MM
HH:MM WDO CADENA [ID_WDO]”, siendo CADENA el nombre corto de maestros.
Los cuadrantes de tipo RBS, se olearán cada 1 en una orden de trabajo independiente de tipo
automatizado. La descripción se la OT comenzará por RBS seguido del mismo criterio que la
orden de trabajo normal. Si se crea más de 1 orden de trabajo, se incluirá el sufijo con el
número de cuadrante (2, 3…) de la solución que se olea. De esta manera el almacén podrá
distinguir las órdenes creadas.
WDO calculará si el cuadrante debería picarse en AGV o manual y enviará esa información por cada uno
de ellos. Esa información se le enviará a MSR en el mensaje CUEC indicando que es prioritario AGV.
Presentará la información detallada del último resultado obtenido del servicio de actualización,
independientemente de que haya sido oleado o no. Mostrará los siguientes campos:
Si se detecta un evento en el sistema que hace que una petición de optimización en estado Pendiente
pase a Fallida, el sistema lo notificará a WDO para poder solicitar una nueva optimización sin tener que
esperar a que termine la actual.
Para ello existe un endpoint /optimisation/wave/{jobId} con la operación DELETE. Si ha sido correcta,
el código de respuesta será 204 (por temas de sencillez en la integración se tomará cualquier código del
tipo 20x como válido).
Este parámetro es global a almacén, incluido los multicadena. En caso de que el almacén sea
multicadena y el parámetro tengo valor verdadero, se renovará la optimización de cada cadena por
separada.
En almacenes que repartan más de 1 cadena, el sistema debe permitir gestionar una optimización de
WDO por cadena. Para ello, aprovechando el watchdog común al sistema, se validarán las
optimizaciones por cadena. Este se realiza manteniendo las optimizaciones indexadas por cadena, y en
el watdog, recorrer en primer nivel las cadenas y en segundo nivel la optimización en curso. Cada
optimización en curso se trata individualmente como hasta ahora en un almacén de una cadena.
El eWMS podrá recibir pedidos con la condición de expedible en falso, esta marca indicará que no se
pueden expedir en el almacén y solo aplicará a pedidos de tipo Packing.
El sistema permitirá que estos pedidos puedan ser tratados hasta su empaquetado de forma normal,
aunque mientras esté activa esta marca no se permitirá su tratamiento en el área de expediciones.
Deberá existir la posibilidad de filtrar los pedidos que contengan esta marca activa cuando se creen las
preselecciones tal y como se indica en SGAEWMS-RF-107-A – Creación de preselecciones.
La información de transporte de estos pedidos será recibida siguiendo el flujo habitual de cualquier otro
pedido, por lo que tanto etiquetas como asignación a rutas de transporte se recibirán aunque el pedido
no sea expedible.
El eWMS deberá notificar al eSHP de las cajas que se corresponden con un pedido no expedible tan
pronto éste haya sido empaquetado informándolo que se trata de un pedido no expedible para que el
sistema de expediciones pueda indicárselo claramente al usuario.´
Si el pedido fue previamente activado la notificación hacia expediciones será como la de cualquier otro
pedido y en eSHP no se conocerá que este pedido fue inicialmente no expedible.
El SGA recibirá por mensajería asíncrona la activación de uno o varios de estos pedidos. La activación,
al tratarse de mensajería asíncrona, podrá recibirse incluso antes que el pedido con la marca de no
expedible, por lo que deberá persistirse y gestionarse adecuadamente. Si se recibiese la activación de
un pedido ya activo se descartaría el tratamiento del mensaje y se indicaría a través de logs y una
alerta que los pedidos en cuestión ya habían sido activados previamente.
La notificación hacia eSHP de que un pedido ha pasado a ser expedible cuando no lo era previamente se
hará únicamente si previamente se había informado de las cajas que componían el pedido y se hará
para todas las cajas que lo componen.
Desde la pantalla de seguimiento de pedidos se podrán filtrar aquellos que son no expedibles con un
nuevo filtro expedible Sí/No tal y como se indica en el requisito
El tipo de cuadrante estará definido en SGA_MAESTROS; las propiedades definidas son las siguientes:
ID
Código
Descripción
Sin papel
Los artículos personalizables son aquellos productos que podrán ser modificados de acuerdo a las
preferencias personales del cliente. Los artículos a personalizar estarán almacenados junto al resto de
artículos y la customización será realizada en el propio almacén.
Para ello, la información de los pedidos se recibirá partidos por unidad, habiendo una línea de pedido
por cada unidad del pedido. Esta funcionalidad ya se está soportada como se describe en SGAEWMS-RF-
101.1-A – Líneas de pedido, pero además en dichas notificaciones de pedidos se incluirá la información
propia de la customización. Para cada una de estos artículos, podrían indicarse una o más
personalizaciones. Cada customización vendrá detallada mediante los atributos “Lugar”, “Tipo”,
“Fuente”, “Color”, “Tamaño” y “Texto”. De los campos anteriores, de cara a generalizar otros posibles
tipos de personalización futuros, tan sólo los dos primeros son obligatorios. El resto podrían no estar
especificados aunque para el caso de las personalizaciones iniciales (que incluyen bordado de textos)
todos los campos deberían venir cubiertos. Si no es así, no habrá establecido ningún valor por defecto y
simplemente no se tendrán en cuenta
Para poder tratar los pedidos por separado dependiendo del tipo de personalización que requieran sus
prendas, es necesario que el sistema permita al usuario distinguir entre unos pedidos y otros. Para ello,
el módulo coordinador deberá añadir marcas a los pedidos dependiendo de los tipos de personalización
de las prendas que contiene. El texto de estas marcas será compuesto por la concatenación del texto
definido en la configuración por defecto y el tipo de customización.
Por poner un ejemplo, si en el sistema se configura como texto por defecto “CUSTOM“ y un pedido
contiene una prenda con tipo de personalización “EMBROIDERY”, este tendrá una marca cuyo nombre
será “CUSTOM-EMBROIDERY”. Sin embargo, si la prenda tuviese como tipo de personalización
“STAMPING”, sería “CUSTOM-STAMPING”.
Para los pedidos recibidos por el sistema, se podrán recibir marcas tanto a nivel pedido como a nivel
línea de pedido. Dichas marcas se usarán para gestionar avisos sobre operativas especiales (sobre todo a
la hora del empaquetado). Las marcas recibidas podrán ser una única clave o pares clave/valor y
deberán ser persistidas y notificadas al sistema de empaquetado en el momento de la olear el pedido.
Por ejemplo, para pedidos de P&B se empezará a recibir una marca a nivel pedido “VIP”. Dicha marca
será usada en el sistema de empaquetado para mostrar un popup en el que se le indique al operario que
debe usar un consumible especial para empaquetar dicho pedido.
Como en este ejemplo, de esta forma se podrá realizar de forma más flexible la inclusión de nuevas
marcas para promociones o avisos temporales.
El eWMS proporcionará una pantalla desde la que se podrán gestionar las prioridades por defecto que
tendrán las órdenes de trabajo que se creen desde el eWMS.
Para mejorar el picking de pedidos ecommerce con picking sin papel es necesario que se permita
modificar la prioridad de las oleadas a nivel OT.
Alta 30
Normal 50
Baja 70
Muy Baja 90
Como seguramente en futuro se quieran añadir o modificar estos tipos se creará la tabla
TIPO_PRIORIDAD con los campos NOMBRE, VALOR y la tabla de internacionalización
TIPO_PRIORIDAD_IDIOMA
Se creará una nueva pantalla "Gestión de prioridades por defecto" en la que se permita modificar la
prioridad inicial que tendrá cada tipo de oleada (ptl, unitarios, monopedido, etc). En caso de que no se
incluya nada en la nueva tabla la prioridad por defecto será "Normal".
Al crear las oleadas se enviará el PRIO para cada OT después de notificar los CUEC.
El sistema proporcionará una nueva funcionalidad a través de la cual se generarán de forma automática
y en base a parámetros que se definirán a continuación, oleadas de picking de pedidos sin necesidad de
la selección explícita de pedidos por parte de los automatistas del centro.
Existirá, bajo el menú de Pedidos, una nueva opción que se llamará “Oleadas automáticas”, la cual
contendrá a su vez otro submenú que se mostrará al pasar el ratón por encima. Dicho submenú
contendrá las opciones:
Gestión de oleadas automáticas
Seguimiento de oleadas automáticas
Todas estas opciones tendrán asociadas sus acciones correspondientes para poder gestionar los permisos
de las mismas en función del rol logueado en el sistema.
Se propone el siguiente mockup para la gestión de las oleadas automáticas teniendo en cuenta que se
permitirá crear oleadas de forma automática separando los pedidos según el número de unidades que
tenga cada uno de los pedidos. Además de eso, se podrá configurar qué pedidos se consideran
prioritarios y la distribución de estos en el total de los cuadrantes.
Como hasta ahora, no se podrán olear en los mismos cuadrantes pedidos de diferentes Cadenas. Deberá
seleccionarse siempre con qué Cadena se está trabajando y se guardará una configuración diferente por
Cadena que aplicará en el momento de la ejecución del Monitor de oleadas automáticas. Si el proceso
está activo, lo estará para todas las Cadenas con las que se opere en el centro, aplicando si no se ha
definido de otra forma, la configuración por defecto.
En esta pantalla se mostrará el estado del proceso, indicando si está activo o no. Dicho indicador
mostrará el texto “Activado” sobre fondo verde cuando el proceso se esté ejecutando y el texto
“Desactivado” sobre fondo rojo cuando esté parado.
El proceso de oleado automático se podrá activar o desactivar mediante los botones habilitados a tal
efecto. El botón de activación estará inhabilitado cuando el proceso esté activo, impidiendo usarlo. Lo
mismo ocurrirá con el botón de desactivación cuando el proceso esté parado.
Estando el proceso parado, al pulsar el botón activar se mostrará la siguiente pantalla modal para
confirmar o cancelar la acción:
El botón cancelar hará que desaparezca la pantalla modal y no se modifique el estado del proceso. Si se
pulsa el botón aceptar, se activará el monitor definido en SGAEWMS-RF-140.1.1-A – Monitor de oleadas
automáticas aplicando la última configuración guardada.
Habrá una parte de configuración común que aplicará para todos los tipos de oleada/pedido. Dicha
configuración se situará en la parte izquierda de la pantalla y en ella se podrán establecer los siguientes
parámetros:
Cadena: Indica la Cadena para la cual se está estableciendo la configuración de oleada
automática. Se debe persistir una configuración diferente por Cadena (aplicando los valores por
defecto si es necesario) y no podrá haber más de una configuración diferente para una Cadena.
Al cambiar la Cadena en este componente, deberá cargarse la última configuración guardada
para la misma, mostrando los últimos valores configurados para poder modificarlos o no.
Origen: En este filtro se indicará qué listado de pedidos se utilizará para formar los cuadrantes,
tanto la bolsa de pedidos sin preseleccionar completa como las preselecciones creadas
previamente. El valor por defecto de este campo, si no existe una configuración diferente
guardada, será seleccionar solo la bolsa de pedidos sin preseleccionar. El listado de
preselecciones deberá poder ser refrescado manualmente. Se proporcionará un botón para ello.
En ningún caso se incluirán de forma automática pedidos de tipo STOCK_OUT, de picking
transfer hacia otro almacén, de picking transfer que se vayan a completar en el propio centro,
pero cuyo estado sea anterior a Pendiente (StockPendiente, StockInformado, etc.) o sin
etiqueta TEC. Adicionalmente, deberán tenerse en cuenta, si están definidos, los cupos
máximos oleables por tienda. No permitiendo olear pedidos de las tiendas configuradas si
supera el límite establecido.
Agrupar pedidos con necesidades de impresión: Indica si deben agruparse en cuadrantes
separados todos aquellos pedidos para los que se necesite imprimir factura, mensaje regalo,
etc. siguiendo los criterios definidos en SGAEWMS-RF-107-A – Creación de preselecciones a la
hora de detectar este tipo de pedidos. El valor por defecto de esta opción será “Sí” si no existe
una configuración diferente guardada.
Agrupar pedidos con marcas especiales: Indica si deben agruparse en cuadrantes separados
todos aquellos pedidos que contengan marcas a nivel pedido o a nivel línea de pedido como
pudieran ser los pedidos con personalizaciones. El valor por defecto de esta opción será “Sí” si
no existe una configuración diferente guardada.
Nº máximo de unidades: Determina el número máximo de unidades que pueden estar
pendientes de picar. Como norma general, no se olearán más pedidos de forma automática si el
número de unidades pendientes de picar es igual o mayor que el valor indicado en este campo.
Existirá un parámetro de configuración automatic.waves.retailer.default.max.units en el que
se establecerá el valor por defecto que se debe mostrar si no se ha guardado ninguna otra
configuración diferente.
Nº mínimo de unidades: Determina el número mínimo de unidades que pueden estar pendientes
de picar. Como norma general, al llegar a este valor por irse decrementando el número de
unidades oleadas pendientes de picar, se crearán oleadas de forma automática (si el proceso
está activo) hasta alcanzar el valor máximo definido en el punto anterior. Existirá un parámetro
de configuración automatic.waves.retailer.default.min.units en el que se establecerá el valor
por defecto si no se ha guardado ninguna otra configuración diferente.
Criterio de fechas: Determina el criterio que será utilizado para ordenar y priorizar los pedidos.
Los posibles criterios serán los siguientes:
o Fecha Máxima de Expedición
o Fecha de Compromiso de Almacén
Además de la configuración común, existirán dos bloques de configuración; uno para pedidos
prioritarios y otro para el resto de los pedidos:
Pedidos prioritarios Podrá seleccionarse si se quieren priorizar pedidos, el criterio para
considerarlos prioritarios y el porcentaje de pedidos prioritarios en cada uno de los cuadrantes
genereados:
o Podrá seleccionarse si habrá que considerar ciertos pedidos como prioritarios:
Si se selecciona “Sí”, el sistema deberá priorizar los pedidos cuya fecha
(seleccionada en Criterio de fecha) sea en un tiempo inferior al definido y
olearlos según se describe en el requisito SGAEWMS-RF-140.1.1-A – Monitor de
oleadas automáticas. El resto de los campos del menú de pedidos prioritarios
deberán habilitarse.
Si se selecciona “No”, ningún pedido se considerará prioritario y se crearán las
oleadas considerando todos los pedidos con la misma prioridad. El resto de los
campos del menú de pedidos prioritarios deberán estar inhabilitados tal y como
se muestra en la imagen a continuación:
A modo de ejemplo y teniendo en cuenta las diferentes combinaciones de configuración, puede ocurrir
que, en caso de estar habilitado el rango 1 (con mínimo y máximo de uno para unitarios), el rango 2
(con mínimo de 2 y máximo de 99), pedidos con marcas especiales por separado y priorización de
pedidos, tengan que generarse los siguientes tipos de cuadrante:
Pedidos unitarios prioritarios (sin marcas especiales) Todos aquellos pedidos unitarios
prioritarios y que no contengan marcas especiales. Nunca se descartarán pedidos prioritarios,
por lo que es posible que se genere algún cuadrante con menos pedidos que la restricción
estricta de tamaño definida.
Pedidos unitarios prioritarios (sin marcas especiales) Todos aquellos pedidos unitarios
prioritarios y que sí contengan marcas especiales. Nunca se descartarán pedidos prioritarios,
por lo que es posible que se genere algún cuadrante con menos pedidos que la restricción
estricta de tamaño definida.
Pedidos de una unidad (sin marcas especiales) Todos aquellos pedidos unitarios no
prioritarios (rango 1) y que no contengan marcas especiales. Estos cuadrantes mantendrán la
restricción de oleada estricta en base al tamaño definido.
En caso de que se haya marcado tanto la opción de agrupar pedidos con necesidades de impresión como
la de agrupar pedidos con marcas especiales, un pedido con necesidades de impresión y que tenga
marcas especiales será considerado como pedido con marcas especiales a la hora de separar los
pedidos.
Cada vez que se modifique cualquier parámetro será necesario guardar la nueva configuración pulsando
el botón Guardar Configuración para que sea efectiva. Si se cierra la pantalla habiendo modificado la
configuración, pero sin guardarla, se mantendrá la configuración antigua y será la que deba cargarse y
mostrarse al abrir de nuevo la pantalla. Se podrá modificar la configuración aun estando el proceso de
oleado automático activo. En ese caso, dicha configuración aplicará en la siguiente ejecución del
proceso. Si existe una ejecución en curso a la hora de guardar una nueva configuración, dicha nueva
configuración se guardará una vez termine la ejecución y aplicará por primera vez en la siguiente
iteración.
Cada vez que se guarde una nueva configuración se comprobará el valor establecido como umbral
inferior para el rango específico de Monopedidos. Si dicho valor es inferior al establecido en el
parámetro de configuración automatic.waves.retailer.min.singleorder.size, antes de guardar la
configuración se mostrará una advertencia al usuario: “Con la configuración establecida, se crearán
cuadrantes de monopedidos para todos los pedidos de X o más unidades. ¿Deseas continuar?”, donde en
X se indicará el valor del umbral a configurar. En dicha pantalla, el usuario podrá cancelar y no guardar
los cambios o confirmar y guardar la configuración igualmente.
Sólo se olearán pedidos clásicos cuyo stock se encuentre en el almacén, que estén en estado Pendiente
o Preseleccionado y para los cuales se haya recibido etiqueta desde TEC. En ningún caso se incluirán
pedidos de tipo STOCK_OUT, de picking transfer hacia otro centro o pedidos de picking transfer que se
vayan a completar en el propio centro, pero cuyo estado sea anterior a Pendiente (StockPendiente,
StockInformado, etc.), ya que la operativa para dichos pedidos debe seguir otro flujo operativo ya
definido. Adicionalmente, deberán tenerse en cuenta, si están definidos, los cupos máximos oleables
por tienda. No permitiendo olear pedidos de las tiendas configuradas si supera el límite establecido.
Cada vez que se ejecute, el proceso deberá hacer lo siguiente para cada posible Cadena:
1. Tomar como base de pedidos pendientes de olear el conjunto completo de pedidos en los orígenes
(preselecciones y/o bolsa de pedidos sin preseleccionar) configurados. Ordenar estos pedidos según
el criterio de fecha configurado. Los pedidos sin valor para la fecha usada como criterio deberán
Las oleadas y cuadrantes creados por este proceso de oleadas automáticas podrán ser de los siguientes
tipos:
- Unitarios: para las agrupaciones de pedidos unitarios prioritarios y, si aplica, en caso de que el
primer rango manual esté configurado con rango de unidades 1-1, para las agrupaciones de
dicho rango 1.
- Monopedidos: para las agrupaciones de pedidos del rango específico de Monopedidos (1 pedido
por cuadrante).
- PTL Medios: para las agrupaciones de pedidos del resto de rangos manuales que se hayan
configurado.
Es posible que el proceso de oleado automático coincida con algún intento de creación de oleadas de
forma manual. El sistema deberá garantizar que no existen problemas de concurrencia en este sentido,
bloqueando la creación manual de oleadas mientras se ejecuta el proceso de creación de oleadas
automáticas. Cuando esto suceda, se informará al usuario en la pantalla de creación de oleadas
manuales de este hecho (“La creación de oleadas automáticas está en curso. No es posible crear
oleadas manualmente mientras tanto.”) y se le impedirá que siga con el proceso, hasta que la creación
de oleadas automáticas haya finalizado. De igual manera, si al comenzar el proceso de creación de
oleadas automáticas existiese un proceso de creación manual de oleada en curso, deberá esperarse a
que este termine antes de comenzar el proceso automático.
Para cada oleada creada, más allá de que esté compuesta por uno o varios cuadrantes, se establecerá
su nombre/descripción siguiendo el siguiente patrón:
AUT_idOrdenTrabajo
Los cuadrantes pertenecientes a las oleadas generadas de forma automática también serán distinguibles
por su nombre y seguirán el siguiente patrón:
QAUTidCuadrante (rellenando con ceros por la izquierda hasta alcanzar 10 dígitos en el
idCuadrante)
Para los cuadrantes así generados deberá aplicarse la configuración establecida en SGA_MAESTROS y
SGA_MAESTROS_AREA_LOGISTICA para los tipos de cuadrantes correspondientes a los tipos de oleada
mencionados previamente y su asignación a papel o sin papel, así como el parámetro de configuración
que indica los tipos de asignación para los que no se imprimirá el cuadrante. En base a dichas
configuraciones, de manera análoga a lo que sucede con los cuadrantes creados mediante oleadas
Los pedidos oleados, al igual que en la actualidad, pasarán a estado “En picking” y seguirán el ciclo de
vida habitual de los pedidos en el almacén.
Para intentar facilitar como debería ser el funcionamiento del sistema, se adjunta el siguiente
pseudocódigo:
función calcular bolsas a generar:
para cada rango configurado:
si (separar pedidos con marcas especiales):
crear bolsa de pedidos con marcas especiales para ese rango
función principal:
cargar parámetros configuración
cargar pedidos pendientes de olear de los orígenes configurados
ordenar pedidos pendientes de olear según el criterio de fechas configurado
calcular número de uds pendiente de picar
si (número de pedidos prioritarios != 0) o (número de uds pendientes de picar < número mínimo uds) entonces:
calcular bolsas a generar
si uds(pedidos prioritarios) + número de uds pendientes de picar >= número máximo uds entonces:
cargar lista pedidos prioritarios pendientes
añadir pedidos prioritarios pendientes a cada bolsa
crear oleada con pedidos cargados
si no:
cargar lista pedidos prioritarios pendientes
cargar lista pedidos NO prioritarios pendientes
añadir pedidos prioritarios pendientes a cada bolsa
recorrer lista pedidos NO prioritarios pendientes # ordenados por el criterio de fechas configurado:
# condición es parar llegar al núm de unidades necesarias
si ((uds(pedidos ya oleados) + uds(pedidos en bolsas)) >= número máximo uds):
crear oleada con pedidos cargados
break
si no:
añadir pedido a bolsa correspondiente
A continuación, se presentan cinco escenarios en los que se explican las precondiciones de cada uno de
ellos y cuál debería ser el resultado obtenido:
- Pedidos:
o 500 pedidos de 1 unidad (300 con FME H y 200 con FME H+10)
o 500 pedidos de 2 unidades (200 con FME H+5 y 200 con FME H+15)
- Configuración:
o Cadena: Zara
o Origen: Bolsa de pedidos
o Agrupar pedidos con necesidades de impresión: NO
o Agrupar pedidos con marcas especiales: NO
o Número máximo de unidades: 1000
o Número mínimo de unidades: 500 (y 100 oleadas en el momento de la ejecución)
o Criterio de fechas: FME
o Priorización de pedidos: DESACTIVADA
o Rangos configurados:
Min: 1 Máx: 1 Pedidos por cuadrante: 20
Min: 2 Máx: 99 Pedidos por cuadrante: 15
Resultado esperado:
Escenario 2:
- Pedidos:
o 500 pedidos de 1 unidad sin necesidades de impresión (300 con FME H y 200 con FME
H+10)
o 500 pedidos de 1 unidad con necesidades de impresión (300 con FME H + 2 y 200 con
FME H+10)
o 500 pedidos de 2 unidades sin necesidades de impresión (300 con FME H + 3 y 200 con
FME H+10)
o 500 pedidos de 2 unidades con necesidades de impresión (300 con FME H + 4 y 200 con
FME H+10)
- Configuración:
o Cadena: Zara
o Origen: Bolsa de pedidos
o Agrupar pedidos con necesidades de impresión: SÍ
o Agrupar pedidos con marcas especiales: NO
o Número máximo de unidades: 1000
o Número mínimo de unidades: 500 (y 100 oleadas en el momento de la ejecución)
o Criterio de fechas: FME
o Priorización de pedidos: DESACTIVADA
Escenario 3:
- Pedidos:
o 500 pedidos de 1 unidad (200 con FME H, 100 con FME H + 5 y 200 con FME + 20)
o 500 pedidos de 2 unidades (200 con FME H + 1, 150 con FME H + 10 y 150 con FME + 15)
- Configuración:
o Cadena: Zara
o Origen: Bolsa de pedidos
o Agrupar pedidos con necesidades de impresión: NO
o Agrupar pedidos con marcas especiales: NO
o Número máximo de unidades: 1000
o Número mínimo de unidades: 500 (y 100 oleadas en el momento de la ejecución)
o Criterio de fechas: FME
o Priorización de pedidos: ACTIVADA
Priorizar pedidos con FME en menos de: 3h
% de pedidos prioritarios por cuadrante: 25%
o Rangos configurados:
Min: 1 Máx: 1 Pedidos por cuadrante: 15
Min: 2 Máx: 99 Pedidos por cuadrante: 15
Resultado esperado:
Escenario 4:
- Pedidos:
o 500 pedidos de 1 unidad (50 con FME H, y 450 con FME + 5)
o 500 pedidos de 2 unidades (50 con FME H + 1 y 450 con FME + 10)
- Configuración:
o Cadena: Zara
o Origen: Bolsa de pedidos
o Agrupar pedidos con necesidades de impresión: NO
o Agrupar pedidos con marcas especiales: NO
o Número máximo de unidades: 1000
o Número mínimo de unidades: 500 (y 100 oleadas en el momento de la ejecución)
o Criterio de fechas: FME
o Priorización de pedidos: ACTIVADA
Priorizar pedidos con FME en menos de: 3h
% de pedidos prioritarios por cuadrante: 50%
o Rangos configurados:
Min: 1 Máx: 1 Pedidos por cuadrante: 15
Min: 2 Máx: 99 Pedidos por cuadrante: 15
Resultado esperado:
Escenario 5:
- Pedidos:
o 500 pedidos de 1 unidad (50 con FME H, y 450 con FME + 5)
o 500 pedidos de 2 unidades (50 con FME H + 1 y 450 con FME + 10)
o 150 pedidos de 1 unidad con marcas especiales (50 con FME H, y 100 con FME + 6)
o 150 pedidos de 1 unidad con necesidades de impresión (50 con FME H, y 100 con FME +
7)
- Configuración:
o Cadena: Zara
o Origen: Bolsa de pedidos
o Agrupar pedidos con necesidades de impresión: SÍ
o Agrupar pedidos con marcas especiales: SÍ
o Número máximo de unidades: 1000
o Número mínimo de unidades: 500 (y 0 oleadas en el momento de la ejecución)
o Criterio de fechas: FME
o Priorización de pedidos: ACTIVADA
Priorizar pedidos con FME en menos de: 3h
% de pedidos prioritarios por cuadrante: 50%
o Rangos configurados:
Min: 1 Máx: 1 Pedidos por cuadrante: 15
Min: 2 Máx: 99 Pedidos por cuadrante: 15
Resultado esperado:
Tal y como se definió previamente, existirá, bajo el menú de Pedidos, una nueva opción que se llamará
“Oleadas automáticas”, la cual contendrá a su vez otro submenú que se mostrará al pasar el ratón por
encima. Dicho submenú contendrá las opciones:
Gestión de oleadas automáticas
Seguimiento de oleadas automáticas
Aunque exista esta pantalla, las oleadas y cuadrantes generados automáticamente se podrán consultar
desde la pantalla de Seguimiento de Oleadas clásica definida en SGAEWMS-RF-115-A – Seguimiento de
oleadas, mostrándose la misma información que se muestra actualmente también para este tipo de
oleadas.
Existirá un botón de Buscar, que lanzará la consulta según los filtros aplicados y mostrará los resultados
de aplicar dichos filtros sobre los cuadrantes generados automáticamente y que estén activos. Se
consideran cuadrantes activos aquellos que contienen algún pedido que no ha sido empaquetado y que
A continuación, se mostrará un cuadro con los datos globales, indicando el número de cuadrantes
activos (esto es cuadrantes que contengan pedidos que no han sido empaquetados o cancelados)
pertenecientes a oleadas generadas de forma automática, número de unidades pertenecientes a
pedidos oleados de forma automática que no se han picado y número de unidades pendientes de
empaquetar pertenecientes a pedidos oleados de forma automática. Se incluirá también la fecha y hora
de creación de la última oleada automática (este valor no se autoactualizará, sino que lo hará si aplica
al realizar una nueva búsqueda o al abrir de nuevo esta pantalla). Por último, en el cuadro con datos
globales se indicará el estado del monitor de oleadas automáticas. Se mostrará el texto Activado sobre
fondo verde si el proceso está activo o Desactivado sobre fondo rojo si el proceso está inactivo.
Posteriormente se mostrará una tabla con el resultado de realizar la búsqueda con los filtros
previamente definidos. En dicha tabla se mostrarán los siguientes datos siendo cada registro un
cuadrante activo diferente:
Cadena
Id. de oleada automática
Nombre de la oleada automática
Número de unidades: se indicará con un formato N-M, donde N es el mínimo de unidades por
pedido y M el máximo de unidades por pedido de la agrupación (rango) correspondiente.
Fecha de creación de la oleada
Id. de cuadrante
Fecha máxima de expedición: Se mostraría la menor fecha de todas las FME de los pedidos
incluidos en el cuadrante.
Fecha de compromiso de almacén: Se mostraría la menor fecha de todas las FCA de los pedidos
incluidos en el cuadrante.
Con marca: Indica si algún pedido del cuadrante tiene marca o no. Si alguno lo tiene se
mostrará Sí. Si ninguno tiene marcas especiales se mostrará No. En caso de mostrarse Sí, al
pasar con el ratón por encima del valor, se mostrará un tooltip indicando las marcas presentes
en los pedidos del cuadrante en cuestión
Necesita impresión: Indica si algún pedido del cuadrante tiene necesidades de impresión o no.
Si alguno lo tiene se mostrará Sí. Si ninguno tiene necesidades de impresión se mostrará No
Criterio de fechas: Indica el criterio de fecha configurado en la creación de la oleada
correspondiente.
Nº de pedidos: Número de pedidos incluidos en el cuadrante
Uds. Oleadas: Número de unidades pertenecientes a los pedidos del cuadrante
Uds. Ptes. Picar: Número de unidades de ese cuadrante que todavía no han sido picadas
Uds. Ptes. Empaquetar: Número de unidades de ese cuadrante que todavía no han sido
empaquetadas. Se considerarán unidades empaquetas aquellas pertenecientes a pedidos en
estado empaquetado (o posterior). No se considerará empaquetada una unidad por estar
asignada a una caja de pedido sin que el pedido se haya cerrado
Debajo de dicha tabla se habrá otra tabla de totales que mostrará la suma de las últimas cuatro
columnas de la tabla anterior.
Existirá un botón para poder exportar a CSV los valores que aparezcan por pantalla. Dicho botón se
situará debajo de la tabla en la parte izquierda de la pantalla.
También debajo de la tabla, pero en la parte derecha, aparecerán los botones Imprimir y Detalles. El
botón imprimir se habilitará al seleccionar uno o varios registros de la tabla (si no hay nada
seleccionado permanecerá inhabilitado) y al pulsarlo generará el documento en formato pdf que
representa al cuadrante para poder imprimirlo. Se permitirá la selección múltiple para esta acción y se
imprimirán todos aquellos cuadrantes que hayan sido seleccionados.
El botón Detalles se habilitará al seleccionar cualquier registro de la tabla (si no hay nada seleccionado
o si se selecciona más de uno permanecerá inhabilitado) y al pulsarlo abrirá la pantalla clásica de
seguimiento de oleadas filtrando por el id. de oleada al que pertenece el cuadrante seleccionado.
Para permitir una visualización del trabajo pendiente en cada una de las operativas propias de un
almacén e-commerce, se creará un panel de control. Las métricas a utilizar serán “unidades” y "horas
de trabajo".
Existirá la posibilidad de actualizar y exportar los valores mostrados en pantalla utilizando los botones
“Actualizar” y “Exportar”. El .csv exportado incluirá las columnas de Estado, Uds pendientes y Tiempo
restante (horas):
1. Entradas (Inbound):
Tránsito: (Transit) uds. teóricas asociadas a recepciones con estado "Tránsito" + uds
teóricas asociadas a Entradas de picking con estado “Tránsito”
Pendientes de ubicar: (To put away) uds. teóricas asociadas a órdenes de entrada (OT) y
órdenes de devolución con estado "Abierta" o "Activa" menos las uds. ya ubicadas para esas
OT.
Retenidas: (On hold) uds. de pedidos en estado "PT pendiente", "PT informada", "PT
recibida" o "PT informado parcialmente".
Pendientes de olear: (To wave) uds. pedidos en estado “Pre-seleccionado” + uds. pedidos
en estado “Pendiente”.
Pendientes de picar: (To pick) uds. pedidos en estado "Picking" menos uds. ya picadas de
esos pedidos.
Pendientes de PTL: (To PTL) uds. pedidos en estado "Picado" menos uds. pedidos unitarios
y monopedidos en estado "Picado"; sería lo mismo que calcular uds. pedidos de tipo medio
en estado "Picado".
Pendientes de empaquetar: (To pack) uds. pedidos unitarios y monopedidos en estado
"Picado" + uds. pedidos de tipo medio en estado "Clasificado PTL" + uds. pedidos en estado
"Empaquetándose/Empaquetando".
Pendientes asignar contenedor: (To assign to container) uds. pedidos en estado
"Empaquetado"
Pendientes de expedir: (To ship) uds. pedidos en estado "En expedición"
Picking transfer pendiente de picar (To pick picking transfer): uds. pedidos de picking transfer
en estado “Pendiente”, “Preseleccionado” o “Picking” menos las uds de pedidos en estado
“Picking” que ya han sido picadas.
Otros pendientes de picar (To pick others): uds. solicitadas de órdenes de transferencia de
stock, de reparto a localización o de traspaso en estado “Abierta” o “Activa” menos las uds. ya
picadas de esas órdenes de trabajo.
Pendientes de confirmar por RFID (To confirm RFID): uds. repartidas de órdenes de reparto a
localización, órdenes de traspaso o órdenes de transferencia de picking cuyo destino está
incluido en el parámetro distribution.withRFID.locations en estado “Abierta” o “Activa” menos
las uds. ya confirmadas por RFID de esas órdenes de trabajo.
4. Control de inventario:
El valor de estos parámetros será mostrado en horas como un tooltip cuando nos posicionemos sobre las
horas de trabajo restantes:
Para el cálculo de las horas de trabajo restantes se tomarán las uds. tratadas en cada estado en un
tiempo de referencia definido en base de datos (ejemplo 60 minutos):
- Pendientes de ubicar:
- Pendientes de picar:
- Pendientes de empaquetar:
En caso de no disponer de datos para calcular las horas de trabajo restantes (por ejemplo: cuando el
almacén ha estado parado), se mostrará un guion (“-“).
Se mostrará la información sobre las diferentes secciones cuando el usuario se posicione sobre el texto:
(tooltips)
1. Entradas
Retenidas: uds. de pedidos en estado "PT pendiente", "PT informada", "PT recibida" o "PT
informado parcialmente".
Pendientes de olear: uds. de pedidos en estado “Pre-seleccionado” o “Pendiente”.
Pendientes de picar: uds. de pedidos en estado "Picking" menos uds. ya picadas de esos
pedidos.
Pendientes de clasificar en PTL: uds. de pedidos medios en estado "Picado".
Pendientes de empaquetar: uds. de pedidos unitarios y monopedidos en estado "Picado" +
uds. pedidos medios en estado "Clasificado PTL" + uds. pedidos en estado
"Empaquetándose/Empaquetando".
Pendientes de asignar a contenedor: uds. de pedidos en estado "Empaquetado"
Pendientes de expedir: uds. de pedidos en estado "En expedición"
4. Control de inventario:
Stock total: número total de uds. ubicadas en el almacén en estado disponible o bloqueado.
Pendientes de resolver incidencia: uds. en incidencias de pedidos no resueltas.
Sin embargo, para aquellos pedidos empaquetados en mesas en modo SOM, el módulo de empaquetado
deberá notificar al módulo coordinador mediante el mensaje PEDE indicando que el empaquetado se ha
finalizado sin etiquetar.
El módulo coordinador deberá almacenar la información relativa a las cajas de los pedidos y reenviar
esta información al módulo de expediciones. Los pedidos pasarán a estar en estado Etiquetando,
descrito en el requisito SGAEWMS-RF-100-A – Estados de un pedido. Las cajas deberán en estado
Pendiente de etiquetar, descrito en el requisito SGAEWMS-RF-120-A – Estados de una caja de pedido.
La información enviada desde el módulo de empaquetado contendrá los códigos de barras de las
etiquetas de transportista asignadas, aunque las cajas de pedido aún no hayan sido etiquetadas. Esta
información será la que necesitará el módulo de expediciones para tratar las cajas de pedido.
Para aquellos pedidos que se hayan empaquetado sin etiquetar, el módulo de empaquetado mandará un
mensaje PEDE cuando se realice el etiquetado indicando que el empaquetado se ha completado. El
El sistema se encargará de mantener una foto en tiempo real del stock del almacén en base a las
notificaciones recibidas del módulo de almacenamiento. Se guardará qué cantidad de cada referencia
está presente en cada contenedor de stock del almacén. Una misma referencia puede estar en
campañas diferentes, pero el sistema debe ser capaz de manejar dicha situación de forma
transparente.
Un contenedor de stock viene determinado por un código único, cuyo patrón debe ser configurable, que
lo identifica dentro del almacén. Dicho código debe definir en qué zona del stock está el contendor,
qué tipo de prendas contiene (paquetería, prenda colgada o calzado), el pasillo en el que está situado y
la posición dentro del pasillo. Un ejemplo de código de contenedor de stock es F-M-001-G-001.
En un contenedor podrán guardarse distintas referencias, no tendrá por qué ser sólo una.
Si un contenedor está vacío, no será necesario persistir ninguna información sobre él.
La información de stock es un volumen de datos elevado, por lo que será necesario optimizar la forma
de persistirlo y de acceder a dicha información.
Normalmente, cuando haya algún cambio en el stock, deberá notificarse a CIS mediante una variación o
ajuste de stock.
En ambos informes deberá mostrarse para cada variación de stock la orden de trabajo y ola a la que
pertenece, el tipo de variación, el SKU afectado, cantidad, fecha, cadena, código de PO (si aplica),
código de pedido (si aplica) y razón. La razón podrá tener los siguientes valores:
Para intentar reducir el volumen de mensajería que enviamos actualmente a los sistemas externos, el
eWMS permitirá configurar que se envíen de forma agrupada aquellas variaciones de stock que por todas
las demás condiciones (gestión de bolsas, gestión de teórico de la orden de trabajo, …) se considerasen
listas para ser enviadas, es decir, la acumulación se hará únicamente a nivel de comunicaciones y no
tendrá lógica en el sistema.
No se realizará agrupación en la comunicación hacia CIS de ninguna de las líneas de inventario que se
van a comunicar, de tal manera que, si en el sistema se generaron dos variaciones y se acumulan, en la
comunicación se seguirán enviando como dos variaciones aunque irán en un único mensaje, aunque se
tratase del mismo SKU, mismo cambio de estados, mismo reason y misma orden de trabajo (PONumber
o DeliveryNumber) se comunicarían dos entradas cada una con su timestamp.
Se deberá desarrollar además la lógica necesaria para que ante una parada ordenada del sistema se
envíen las variaciones acumuladas, ya sea durante la parada o al reiniciarse el mismo.
Taras. Se permitirán definir contenedores de stock que contendrán referencias con defectos de
fabricación o que estén en mal estado que no estarán a la venta. Dichos contenedores serán
tratados como contenedores de taras y estarán codificados de manera diferente al resto de los
contenedores (Ej. D-M-001-H-001).
Bloqueo. Sirven para reservar mercancía que por cualquier motivo no se quiere poner a la
venta. De la misma forma, el sistema deberá ser capaz de reconocer dichos contenedores y
aplicar la lógica que corresponda para su tratamiento y notificación a CIS.
Bloqueo CIQ. También se podrá crear un patrón para los contenedores en estado bloqueado CIQ.
El tratamiento será idéntico al existente para contenedores bloqueados.
En operación. El tratamiento será el mismo que el existente para contenedores bloqueados o
CIQ. El sistema deberá ser capaz de reconocer dichos contenedores y notificar mediante un
nuevo estado (11) las prendas que se ubiquen o muevan a los contenedores que cumplan el
patrón definido.
Pendiente validación. Tratamiento idéntico al que tienen los contenedores bloqueados. El
sistema notificaría los movimientos de las prendas con un nuevo estado (15) para los
contenedores que cumplan el patrón definido.
Tara menor. Se permitirán definir contenedores de stock con un tratamiento similar al de las
taras, no contando como stock disponible. El sistema deberá ser capaz de reconocer dichos
contenedores y notificar mediante un nuevo estado (06) las prendas que se ubiquen o muevan a
los contenedores que cumplan el patrón definido.
De la misma forma, deberán mantenerse las notificaciones de cambios de estado de stock cuando se
muevan prendas entre los contenedores que cumplan los diferentes patrones definidos.
Cada vez que un contenedor varíe en alguna de sus propiedades, el módulo de almacenamiento lo
notificará al sistema. Un contenedor puede variar por varios motivos:
Siempre que un contenedor quede vacío, se borrará del sistema y dejará de persistirse la información
relacionada con él.
Si se recibe una notificación por parte del módulo de almacenamiento en la que se indique que se ha
borrado un contenedor y dicho contenedor tenía prendas ubicadas en él, el sistema deberá dejar de
persistirlo y enviará un ajuste de stock negativo a CIS para quitar de la venta la mercancía contenida.
El sistema mantendrá bolsas en las que se acumularán cierto tipo de variaciones. Por un lado aquellas
variaciones relacionadas con la operativa de prendas dañadas (taras) y por otro con las variaciones
relacionadas con las cancelaciones de pedidos.
Dichas bolsas podrán ser configurables, indicando el número máximo de variaciones que pueden
contener. Si es cero, no acumulará ningún tipo de variación.
En el caso de las prendas dañadas, cada vez que se declare una tara, el sistema recibirá la notificación
del módulo de empaquetado, notificará dicho hecho a CIS y guardará la prenda tarada en la bolsa de
stock. Cuando posteriormente se quieran ubicar las prendas dañadas en las ubicaciones habilitadas para
ello, se comprobará si la prenda que se ubica existe en la bolsa de taras, descontándola de ella sin
necesidad de enviar ninguna notificación a CIS.
El usuario podrá visualizar el contenido de las bolsas de stock y se permitirá que las vacíe siempre que
quiera. En este caso, se enviarán los ajustes o movimientos de stock necesarios.
La función de esta bolsa será, ante ciertos casos de la operativa, retener los ajustes de inventario
positivos (InventoryAdjustment +1) internamente en SGA. De esta forma, no serán confirmados hasta
completar los conteos/auditorías correspondientes. Al no enviarlos directamente a los sistemas
externos, se evitará afectar a las unidades a la venta, evitando la posibilidad de causar sobreventa
hasta que se completen dichas auditorías.
El objetivo principal será siempre evitar sobreventa. Durante el período de tiempo que transcurra hasta
que se completen los conteos/auditorías asociados, es preferible tener retenidas algunas unidades que
realmente deberían estar a la venta que tener unidades a la venta sin que existan realmente en el
almacén.
- Extra RFID
- Ubicación de sobrante
- Ubicación de entradas
Los campos ‘Recepción’ y ‘Bulto’ serán opcionales y tan solo se informarán y usarán en alguno de los
tipos de ajustes retenidos en la bolsa:
- En aquellos procedentes de la ubicación de unidades por encima o por debajo del teórico en
entradas.
Se mantendrá asimismo un histórico de la bolsa de ajustes, de forma que cualquier ajuste que deba ser
eliminado de la bolsa (ya sea por compensación o por liberación, y por cualquier motivo) será movido a
este histórico. La estructura del histórico de la bolsa de ajustes será la siguiente:
- ID del histórico: identificador unívoco (autogenerado en Base de Datos) de los registros de este
histórico (ya que podrá haber varios registros por cada ajuste originalmente retenido en la
bolsa).
- SKU: referencia afectada por el ajuste
- Cantidad: variación de unidades correspondiente al ajuste
- Motivo: motivo que origina el ajuste
En el caso de ajustes que no pasan por la bolsa de ajustes (y que se liberan directamente cuando se
crean, pasando directamente al histórico), el campo ‘ID de operación’ de este histórico quedará sin
valor informado (teniendo en ese caso solamente, por tanto, el propio identificador unívoco del
histórico).
Para cada ajuste retenido en la bolsa, EWMS solicitará a las áreas de almacenamiento que
correspondan, que realicen conteo/auditoría del SKU involucrado en relación a la orden de trabajo o
proceso afectado, de forma que existirá siempre una lista de instalaciones de áreas de almacenamiento
asociadas.
Esta solicitud se realizará mediante un mensaje AUDI a cada área de almacenamiento necesaria. En
dicho mensaje se incluirán nuevos campos (todos opcionales):
Además, será posible solicitar el conteo (y las correspondientes auditorías de las posiciones con
discrepancias de stock) de las posiciones involucradas, usando para ello un nuevo valor en el campo con
el tipo de auditoría: ‘C’, marcar para contar. Las posiciones que se vayan a contar/auditar por este tipo
de solicitudes asociadas a ajustes retenidos en la bolsa no se deberán marcar en error en ningún caso.
El campo Ola del AUDI se enviará siempre con el valor por defecto, sin informar: todo 0s.
Cada área de almacenamiento a la que se envíe la solicitud de auditoría o conteo deberá responder con
un mensaje RAUD cuando haya terminado todo el trabajo pendiente de revisión de posiciones (todos los
conteos/auditorías necesarios, en base a la referencia y la orden de trabajo correspondientes). En la
respuesta deberá incluirse también el id de operación asociado (enviado por EWMS en el
correspondiente AUDI). La lista de posiciones que habrá que contar/auditar en cada área de
almacenamiento involucrada dependerá de la operativa concreta que haya llevado a la inclusión de un
nuevo ajuste en la bolsa (y será responsabilidad de cada área de almacenamiento determinar qué
posiciones la conformarán).
Una vez la lista de un ajuste tenga todas las áreas de almacenamiento en estado Completado, éste será
liberado y deberá comunicarse el ajuste de inventario correspondiente a los sistemas externos,
eliminándose dicho ajuste de la bolsa en SGA y pasando al histórico. Tal y como se explica en
SGAEWMS-RF-009.3-A, los ajustes positivos y con Recepción asociada (provendrán de ubicaciones de
entradas con discrepancia con respecto al teórico) así liberados deberán ser comunicados vinculados al
PoNumber correspondiente. En dicho caso, habrá que actualizar también la información asociada.
Cualquier variación de stock negativa causada por una auditoría (MTOL) deberá ser primero comprobada
contra la nueva bolsa de ajustes. Si dicho ajuste de stock puede “matar” (compensar) alguno de la
bolsa, provocará la eliminación de dicho ajuste de la bolsa (sin esperar por los correspondientes RAUD),
llevándose este al histórico. Siempre se intentarán “matar” primero aquellos ajustes que lleven más
tiempo retenidos en la bolsa de ajustes. El proceso consistirá en enviar ambos ajustes de forma
consecutiva. Esto permite asegurar que el resultado final en la variación de stock es el deseado, pero
que todos los ajustes generados en SGA acaban llegando a CIS en algún momento, quedando también
traza de ellos. Dado que estos ajustes en realidad no tienen que tener ningún efecto de variación de
stock en el almacén, se enviarán a CIS con una razón (reason) específica en el mensaje correspondiente
(InventoryAdjustment), para que éste pueda tratarlos de forma diferente y no comunicarlos al resto de
sistemas involucrados. La razón a utilizar en estos casos será ‘DISMISSED_HELD_ADJ’.
En aquellos casos donde una variación de stock negativa por auditoría compense sólo parcialmente un
ajuste retenido en la bolsa, se debe proceder de la siguiente manera:
Adicionalmente, los ajustes retenidos en la bolsa de ajustes pueden ser eliminados manualmente desde
la pantalla de consulta de dichos ajustes en la interfaz.
La bolsa de ajustes deberá tenerse siempre en cuenta en las sincronizaciones de stock. De forma que
EWMS comunicará la foto de stock correspondiente restándole las unidades positivas retenidas en la
bolsa. Ver SGAEWMS-RF-206-A para más detalles.
Algunos ejemplos de operativas que desencadenarán la inclusión de ajustes en la bolsa son las
siguientes:
En general, la lógica asociada a estos ajustes será similar a la de cualquier otro ajuste (positivo)
retenido en la bolsa. Sin embargo, habrá que tener en cuenta una serie de peculiaridades, que se
detallan a continuación:
Los filtros disponibles son: SKU, envío (código de envío), fecha de alta, estado origen/destino y motivo.
En el caso del filtro por motivo, tienen que mostrarse todos los posibles valores de motivo para registros
de la bolsa de ajustes, especificados en SGAEWMS-RF-205.1-A.
El botón Exportar permite exportar un CSV con el mismo contenido que la tabla de resultados.
Los filtros disponibles son: SKU, envío (código de envío), resultado, fecha de alta/baja, estado
origen/destino y motivo.
En el caso del filtro por motivo, tienen que mostrarse todos los posibles valores de motivo para registros
de la bolsa de ajustes, especificados en SGAEWMS-RF-205.1-A.
Cada vez que EWMS retenga un ajuste en la bolsa, enviará un mensaje AUDI a cada área de
almacenamiento necesaria. En dicho mensaje deberá indicarse (en el campo OT Operación) el id de OT
de Auditoría de bolsa de ajustes que le corresponda al ajuste en cuestión. Será siempre la OT de este
tipo que exista activa en el sistema. Si no existe ninguna activa, se creará una nueva automáticamente
(enviando el correspondiente DEOT).
Este tipo de órdenes de trabajo sólo podrán cerrarse desde EWMS. En dicho momento, se notificará este
cierre a todas las áreas de almacenamiento correspondientes (mediante un mensaje FIND),
desencadenando la cancelación de todos los conteos/auditorías pendientes.
Cada ocasión en la que se dé esta situación para un artículo determinado será procesada por separado,
con su correspondiente ajuste retenido en la bolsa. Los datos para la inserción del nuevo ajuste serán
los siguientes (ver SGAEWMS-RF-205.1-A para más información):
Para cada ajuste retenido en la bolsa, EWMS solicitará a las áreas de almacenamiento que correspondan
que realicen conteo (y las correspondientes auditorías de las posiciones con discrepancias de stock) del
SKU involucrado en relación a la orden de trabajo afectada (reparto a tienda o Picking Transfer). Estas
solicitudes se realizarán (mensajes AUDI) y gestionarán tal y como se explica en el requisito SGAEWMS-
RF-205.1-A. En dichos mensajes deberá indicarse tipo de auditoría ‘C’ (marcar para contar) y será
necesario incluir el id de operación asociado al ajuste recién incluido en la bolsa de ajustes, así como el
id de la OT de Auditoría de bolsa de ajustes al que queda vinculado dicho id de operación. No se
informará ningún valor en el campo ‘Tipo de sobrante’.
Una vez insertados los ajustes en la bolsa, éstos seguirán el flujo de vida propio de la bolsa de ajustes
(definido en el requisito SGAEWMS-RF-205.1-A): serán liberados (y, por tanto, comunicados a sistemas
En el momento en el que el ajuste es liberado, si una unidad extra provenía de haber sido picada no
escaneada, el ajuste de la bolsa se compensaría con el ajuste negativo correspondiente a la auditoría
de la posición de donde fue extraída la unidad sin haber sido escaneada. Sin embargo, si todo el stock
de las posiciones afectadas es correcto (la unidad extra es realmente un nuevo aflorado), el ajuste
positivo de la bolsa sería correctamente liberado.
A continuación, se muestran ejemplos de cómo debería ser la evolución del stock (en cada uno de los
actores involucrados) en los casos descritos en el párrafo anterior:
- Después de CAR:
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 1000) y se
envía el correspondiente AUDI desde EWMS a MSR. Se indica tipo de auditoría ‘C’ e id de
operación 1000.
- Después de auditar:
o Al auditar la posición incorrecta, MSR envía un MTOL que supone un ajuste negativo que
compensa en ajuste retenido en la bolsa.
o Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 1000. Pero en ese momento, ya no hay ningún ajuste retenido
asociado a dicho id.
- Después de CAR:
o Al retener el ajuste en la bolsa, se genera un nuevo id de operación (i.e., el 1001) y se
envía el correspondiente AUDI desde EWMS a MSR. Se indica tipo de auditoría ‘C’ e id de
operación 1001.
- Después de auditar:
o Como todas las posiciones están OK, ningún MTOL enviado desde MSR supone variación
de stock.
o Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 1001. Y es en ese momento cuando se produce la liberación del
ajuste retenido.
SGAEWMS-RF-205.3-B – Contar posiciones por unidades faltantes leídas por RFID en bultos
picados para tienda
Con el objetivo de corregir posibles unidades sacadas de la venta de forma errónea, cuando al procesar
en EWMS la mensajería recibida desde CAR ante una lectura RFID de un bulto para tienda se detecten
unidades faltantes (por debajo del teórico de picking del bulto) dentro de los límites de tolerancia
configurados, además de enviar a los sistemas externos los ajustes de inventario negativos asociados a
dichas unidades, se deberá realizar conteo (y auditoría de las posiciones con discrepancias de stock) de
todas las posiciones afectadas. En estos casos no se haría uso de la retención de variaciones de stock en
la bolsa de ajustes. Ver SGAEWMS-RF-601.7-A para más información acerca de cómo se detectan estas
situaciones en función de la mensajería intercambiada con CAR.
EWMS solicitará a las áreas de almacenamiento que correspondan que realicen conteo (y las
correspondientes auditorías de las posiciones con discrepancias de stock) del SKU involucrado en
relación a la orden de trabajo afectada (reparto a tienda o Picking Transfer). Estas solicitudes se
realizarán mediante los correspondientes mensajes AUDI. Deberá indicarse tipo de auditoría ‘C’ (marcar
para contar) y no será necesario indicar ningún id de operación ni OT operación (ya que no se está
reteniendo ningún ajuste en la bolsa de ajustes). No se informará ningún valor en el campo ‘Tipo de
sobrante’.
Según lo descrito en este requisito, si una unidad faltante detectada en CAR estaba originada por una
prenda correctamente escaneada y picada (y posteriormente “perdida”), el ajuste negativo preventivo
enviado a los sistemas externos habría protegido de la correspondiente sobreventa. Por el contrario, si
A continuación, se muestran ejemplos de cómo debería ser la evolución del stock (en cada uno de los
actores involucrados; la bolsa de ajustes no participa en estos casos) en los casos descritos en el párrafo
anterior:
- Después de CAR:
o Se envía el correspondiente AUDI desde EWMS a MSR. Se indica tipo de auditoría ‘C’ y no se
indica id de operación.
- Después de auditar:
o Como todas las posiciones están OK, ningún MTOL enviado desde MSR supone variación de
stock.
- Después de CAR:
o Se envía el correspondiente AUDI desde EWMS a MSR. Se indica tipo de auditoría ‘C’ y no se
indica id de operación.
- Después de auditar:
Al auditar la posición incorrecta, MSR envía un MTOL que supone un ajuste positivo.
Existirán distintas operativas que pueden dar lugar a este proceso de ubicación de sobrante (todas ellas
serán gestionadas de manera equivalente):
Cuando se ubiquen unidades usando esa nueva opción (la ubicación se realizará directamente en
posiciones “normales”, no en posiciones bloqueadas), MSR indicará un motivo específico en el MTOL que
envía a EWMS: BA (variación por ubicación de sobrante contra bolsa de ajustes). De esta forma, el
módulo coordinador podrá distinguir estos casos y actuar en consonancia: en estos casos no se comunica
el ajuste de inventario a los sistemas externos (ya que dicho ajuste se va a retener en la bolsa de
ajustes).
- OT:
o Si se trata de ubicación de sobrante de reparto a tienda indicará la OT de reparto a
tienda o Picking Transfer relacionada.
o Si se trata de ubicación de sobrante de reparto por cuadrante indicará la OT de
Movimiento Interno contra la que se completó la ubicación.
o Si se trata de ubicación de sobrante por Lost & Found indicará, también, la OT de
Movimiento Interno contra la que se completó la ubicación.
- Área y Stock (si se trata de ubicación de sobrante de Lost & Found para la que el usuario ha
escogido restringir la operativa al área-stock donde se ha ubicado el sobrante)
- Posición donde se ha realizado la ubicación de sobrante.
- SKU afectado
- Cantidad de sobrante ubicada
- Estado mercancía y Ola se enviarán siempre con el valor por defecto, sin informar: todo 0s.
- Cuadrante se enviará siempre sin informar.
- Tipo de sobrante correspondiente:
1 en el caso de sobrante de reparto por cuadrante.
2 en el caso de sobrante de reparto a tienda.
3 en el caso de sobrante por Lost & Found.
Al recibir este mensaje, EWMS desencadena la retención del ajuste y el proceso de revisión asociado,
tal y como se explica a continuación.
Cada ubicación de sobrante será procesada por separado, con su correspondiente ajuste retenido en la
bolsa. Los datos para la inserción del nuevo ajuste serán los siguientes (ver SGAEWMS-RF-205.1-A para
más información):
Para obtener el estado a utilizar en el ajuste retenido (siempre se usará el mismo para origen y destino)
deberán consultarse los distintos patrones de estado que haya definidos en el sistema. Si la posición
informada en el USBA cumple alguno de esos patrones, deberá usarse el estado correspondiente a dicho
patrón. En caso de no cumplir ninguno de ellos, se usará el estado Disponible (02).
Para cada ajuste retenido en la bolsa, EWMS solicitará a las áreas de almacenamiento que correspondan
que realicen conteo (y las correspondientes auditorías de las posiciones con discrepancias de stock) del
SKU involucrado en relación a la orden de trabajo o cuadrante afectados (o un área-stock o toda el área
de almacenamiento en el caso de Lost & Found). Estas solicitudes se realizarán (mensajes AUDI) y
gestionarán tal y como se explica en el requisito SGAEWMS-RF-205.1-A. En dichos mensajes deberá
indicarse tipo de auditoría ‘C’ (marcar para contar) y será necesario incluir el id de operación asociado
al ajuste recién incluido en la bolsa de ajustes, el id de la OT de Auditoría de bolsa de ajustes al que
En el caso de sobrante de reparto por cuadrante (tipo de sobrante 1 en el USBA), antes de generar el
AUDI correspondiente, el sistema deberá comprobar si existe algún registro compatible en la bolsa de
sobrante pendiente de ubicar (ver más detalle en SGAEWMS-RF-205.4.1-A). En caso de existir en dicha
bolsa algún registro de tipo Sobrante de reparto por cuadrante para el mismo SKU que el informado en
el USBA en cuestión (en el caso de varios registros coincidentes se cogerá siempre el registro con fecha
de inserción más antigua):
- Deberá cogerse el Cuadrante y OT asociadas a dicho registro, y serán informados en los campos
correspondientes del AUDI que se envíe hacia MSR.
- Deberá eliminarse dicho registro de unidad sobrante pendiente de ubicar.
Una vez insertados los ajustes en la bolsa, éstos seguirán el flujo de vida propio de la bolsa de ajustes
(definido en el requisito SGAEWMS-RF-205.1-A): serán liberados (y, por tanto, comunicados a los
sistemas externos) si se vence su tiempo máximo de duración o si se terminan todas las tareas de
conteo/auditoría en todas las áreas de almacenamiento sin que ninguno de los posibles ajustes por
auditoría intermedios lleguen a “matar” (compensar) el ajuste retenido en cuestión.
El siguiente diagrama es un resumen del flujo del proceso y la mensajería vinculada a la ubicación de
sobrante de reparto por cuadrante:
En los casos de sobrante de reparto a tienda o por Lost & Found, el flujo es muy similar, con las
siguientes salvedades:
En el momento en el que el ajuste es liberado, si una unidad sobrante provenía de haber sido picada no
escaneada, el ajuste de la bolsa se compensaría con el ajuste negativo correspondiente a la auditoría
de la posición de donde fue extraída la unidad sin haber sido escaneada. Sin embargo, si todo el stock
de las posiciones afectadas es correcto (la unidad sobrante es realmente una nueva unidad en el
almacén), el ajuste positivo de la bolsa sería correctamente liberado. Si se trata de una unidad de Lost
& Found que había sido perdida y posteriormente encontrada, el ajuste de la bolsa será compensado
por el ajuste negativo correspondiente a la auditoría de la posición afectada. Y si fuese una unidad Lost
& Found que aparece como nueva, todas las posiciones tendrían su stock correctamente informado en
SGA, por lo que la liberación del ajuste positivo sería correcta.
A continuación, se muestran ejemplos de cómo debería ser la evolución del stock (en cada uno de los
actores involucrados) en los casos descritos en el párrafo anterior:
- Después del packing (estableciendo para este ejemplo que el origen del sobrante es el
cuadrante QU1 de la OT/ola 1000/1):
o EPAC envía el SOPU a EWMS, con la información asociada a la nueva unidad sobrante
pendiente de ubicar:
OT/Ola: 1000/1
Cuadrante: QU1
SKU: Z
Cantidad: 1
Tipo sobrante: 1 (reparto por cuadrante)
- Después de ubicar el sobrante (estableciendo para este ejemplo que se ha usado la OT de
Movimiento Interno 9005, se ha ubicado el SKU Z en la posición P1 y el sobrante ubicado ha
casado con el pendiente de ubicar del punto anterior):
o MSR envía el MTOL con motivo BA y el USBA con la información correspondiente:
Tipo sobrante: 1 (reparto por cuadrante)
OT: 9005
Posición: P1
SKU: Z
- Después de ubicar el sobrante (estableciendo para este ejemplo que el origen del sobrante es
el la OT de Reparto a Tienda 5001 y se ha ubicado el SKU Z en la posición P1):
o MSR envía el MTOL con motivo BA y el USBA con la información correspondiente:
Tipo sobrante: 2 (reparto a tienda)
OT: 5001
Posición: P1
SKU: Z
Cantidad: 1
o Al retener el ajuste en la bolsa de ajustes, se genera un nuevo id de operación (i.e., el
2001) y se envía el correspondiente AUDI desde EWMS a MSR con la siguiente
información:
OT: 5001
Tipo de auditoría: ‘C’
SKU: Z
Id Operación: 2001
Tipo sobrante: 2 (reparto a tienda)
- Después de ubicar el sobrante (estableciendo para este ejemplo que se ha ubicado como
sobrante L&F el SKU Z en la posición P1, usando la OT de Movimiento Interno 9001 y
restringiendo la operación al área-stock donde fue ubicado: A-S1):
o MSR envía el MTOL con motivo BA y el USBA con la información correspondiente:
Tipo sobrante: 3 (Lost & Found)
OT: 9001
Área: A
Stock: S1
Posición: P1
SKU: Z
Cantidad: 1
o Al retener el ajuste en la bolsa de ajustes, se genera un nuevo id de operación (i.e., el
2002) y se envía el correspondiente AUDI desde EWMS a MSR con la siguiente
información:
OT: 9001
Tipo de auditoría: ‘C’
SKU: Z
Id Operación: 2002
Área: A
Stock: S1
Tipo sobrante: 3 (Lost & Found)
- Después de auditar:
o Al auditar la posición incorrecta, MSR envía un MTOL que supone un ajuste negativo que
compensa en ajuste retenido en la bolsa de ajustes.
o Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 2002. Pero en ese momento, ya no hay ningún ajuste retenido
asociado a dicho id.
- Después de ubicar el sobrante (estableciendo para este ejemplo que se ha ubicado como
sobrante L&F el SKU Z en la posición P1, usando la OT de Movimiento Interno 9002 y sin
restringir la operación al área-stock donde fue ubicado):
o MSR envía el MTOL con motivo BA y el USBA con la información correspondiente:
Tipo sobrante: 3 (Lost & Found)
OT: 9002
Posición: P1
SKU: Z
Cantidad: 1
o Al retener el ajuste en la bolsa de ajustes, se genera un nuevo id de operación (i.e., el
2003) y se envía el correspondiente AUDI desde EWMS a MSR con la siguiente
información:
OT: 9002
Tipo de auditoría: ‘C’
SKU: Z
Id Operación: 2003
Tipo sobrante: 3 (Lost & Found)
- Después de auditar:
o Como todas las posiciones están OK, ningún MTOL enviado desde MSR supone variación
de stock.
o Cuando se terminan de revisar todas las posiciones involucradas, MSR envía el RAUD con
el id de operación 2003. Y es en ese momento cuando se produce la liberación del
ajuste retenido.
- Sobrante de reparto por cuadrante generado en mesa de empaquetado (por el momento, solo se
usará este tipo): EPAC comunicará estas unidades.
- Sobrante de reparto a tienda
- Orden de trabajo asociada al cuadrante del muro que ha sido finalizado con sobrante
pendiente de ubicar.
- Ola asociada a dicho cuadrante.
- Cuadrante.
- SKU con sobrante pendiente de ubicar.
- Cantidad (en unidades) de sobrante pendiente de ubicar para dicho SKU y muro.
- Tipo de sobrante correspondiente:
1 en el caso de sobrante de reparto por cuadrante (por el momento, solo se
usará este tipo)
2 en el caso de sobrante de reparto a tienda
Con la recepción de cada mensaje SOPU, EWMS deberá insertar nuevos registros en la bolsa de sobrante
pendiente de ubicar. Se insertará un registro diferenciado por cada unidad comunicada (aunque en el
SOPU dichas unidades puedan venir agrupadas). El registro incluirá la información indicada en el SOPU:
Tipo (en función del valor indicado en el campo correspondiente del mensaje), SKU, Cuadrante y OT.
Los registros de la bolsa de unidades sobrantes pendientes de ubicar deberán caducar, para evitar que
queden “colgados” indefinidamente. Los registros cuya fecha de alta sea más antigua que lo que
indique un nuevo parámetro de configuración, LeftoverPendingToBePlacedMaxTime (que tendrá como
valor por defecto 24 horas) deberán ser eliminados.
- Para el caso de discrepancias por encima del teórico (ajustes positivos): ver SGAEWMS-RF-
009.3-A para más detalles.
- Para el caso de discrepancias por debajo del teórico (ajustes negativos): ver SGAEWMS-RF-
010.1-A para más detalles.
CIS mantiene una operativa de conciliación de stock a través de la cual detecta las posibles diferencias
entre la información de stock que posee y la información de stock persistida en el sistema. La
información de stock debería ser siempre la misma, pero puede que haya diferencias por una operativa
de almacén incorrecta.
Para realizar dicha sincronización, al recibir la solicitud, el sistema solicitará la información de stock
que posee el módulo o los módulos que contengan stock mediante el mensaje STRR y actualizará su
stock si existe alguna diferencia. El módulo coordinador recibirá la información de stock del resto de
módulos en el mensaje STOL.
Esta solicitud de stock a los módulos de almacenamiento no será necesaria si se ha realizado en las
últimas X horas. Siendo el valor de X configurable en un parámetro de configuración en BD, tomando
por defecto el valor de 0.
En caso de no obtener respuesta del sistema en un tiempo configurable (valor por defecto 20 minutos)
de alguno de los sistemas de almacenamiento para los que se ha solicitado stock se generará una alarma
indicando qué sistema no ha respondido y continuará con el procesamiento con la información de stock
que el eWMS tenía.
Por otro lado, deberá calcular qué referencias existen en estado recibido (en las órdenes de recepción
activas que existan en ese momento). Para finalizar, deberá calcular también qué mercancía se ha
picado del stock y aún no ha sido expedida (es decir, está en el almacén, pero no en el área de
almacenamiento). Con toda esta información, especificará a CIS para cada referencia presente en el
stock, la cantidad que existe en cada estado (recibido, disponible, bloqueado, dañado).
La bolsa o nube de ajustes (ver SGAEWMS-RF-205.1-A) deberá tenerse siempre en cuenta en las
sincronizaciones de stock. De forma que EWMS comunicará la foto de stock correspondiente restando
del estado disponible las unidades retenidas en la bolsa, para cada artículo que corresponda. Si para
algún SKU el resultado de esa resta es negativo, se comunicará un valor de 0 unidades para el estado
disponible.
Cuando se produzca este caso donde la resta es negativa, en ese mismo momento deberán liberarse
(eliminarse) de la bolsa de ajustes todas las unidades retenidas por encima del valor actual de la foto
de stock. Es decir, si el stock actual de un SKU A es de 5 unidades y hay 7 unidades retenidas, en la
sincronización de stock debe comunicarse un valor de 0 unidades y, además, deben eliminarse 2 de las
unidades retenidas. La forma de eliminar dicho exceso de unidades retenidas será la siguiente:
- Se actualizarán el o los registros necesarios de la bolsa de ajustes para restar dichas unidades
de lo actualmente retenido (es posible que se elimine completamente uno o varios registros y/o
que haya que actualizar el número de unidades en alguno de los registros existentes).
- Se llevarán al histórico los registros (o parte de registros) de los ajustes que se han eliminado de
la bolsa en el punto anterior. Para ello, se creará un nuevo registro (o varios) en el histórico con
la información de los ajustes originalmente retenidos (todos aquellos campos que no sean
específicos del proceso de historificación se cubrirán con los valores que tienen en el ajuste
original), con la cantidad de unidades que han sido eliminadas, el momento en el que se ha
producido esta eliminación como fecha de baja y con el valor del flag de resultado indicativo de
que el ajuste ha sido descartado.
- Los ajustes así así liberados (eliminados) de la bolsa deberán comunicarse hacia los sistemas
externos con la fecha en la que se está realizando esta lógica de eliminación de sobrerretenidos
Existirá una excepción a lo mencionado en los párrafos anteriores: los ajustes retenidos en la bolsa de
ajustes con valor negativo no deben tenerse en cuenta en las sincronizaciones de stock en ningún caso.
Durante una sincronización de stock se enviarán los ajustes de stock a CIS que se produzcan con fecha
anterior a la propia sincronización además de enviar la foto. Será CIS quien se encargue de descartar las
variaciones anteriores a la fecha de sincronización, pero es necesario su envío para que la suma de
variaciones siempre componga el mismo stock que el obtenido en las fotos.
El módulo coordinador deberá almacenar la información de las solicitudes realizadas con dos propósitos
diferentes: evitar enviar nuevas solicitudes cuando hay alguna en curso y evitar procesar mensajes STOL
no solicitados.
Mientras haya una solicitud en curso en un módulo, no podrán mandarse nuevas solicitudes y habrá que
esperar a que ese módulo envíe la información de stock o la solicitud se considere como caducada.
Cuando el módulo coordinador reciba un mensaje STOL sin identificador o con un identificador no
reconocido, éste deberá descartarlo al tratarse de un mensaje mal formado o generado por error.
El mensaje STOL contendrá un campo que será utilizado para validar que el mensaje es correcto y que
no ha habido ningún problema en la comunicación entre el módulo coordinador y el módulo que
contiene stock.
En caso de que el mensaje no pueda ser validado correctamente, éste será descartado y deberá
generarse una alerta en el sistema.
La respuesta del módulo coordinador a una petición de sincronización de stock podrá estar formada por
uno o más mensajes ‘StockInfoResponse’, para lo cual se introducirán los siguientes campos adicionales
en los mensajes de StockInfoRequest y StockInfoResponse:
Requester: Solicitante de la sincronización, dato tipo token, a fin de ignorar los espacios en
blanco de la cadena. Será un campo opcional, y en caso de ser enviado, la respuesta
StockInfoResponse lo incorporará también, para mantener la trazabilidad del par solicitante y
respuesta en toda la comunicación.
RequestId: Identificador de la solicitud de sincronización. Será un campo opcional, y en caso de
ser enviado, la respuesta StockInfoResponse lo incorporará también, para mantener la
trazabilidad de solicitudes y respuestas asociadas a éstas.
En el mensaje StockInfoResponse:
MessagePart: Número entero igual o mayor que 1, que indicará el lugar que ocupa el mensaje
en la cola de mensajes StockInfoResponse enviados en respuesta a una misma solicitud de
sincronización de stock.
EndPart: Dato de tipo booleano. Si su valor es True, indicará que el mensaje es el último dentro
de la cola de mensajes StockInfoResponse enviados en respuesta a una misma solicitud de
sincronización de stock.
Ambos campos deberán enviarse también en el caso de que la cola de mensajes esté formada por un
solo mensaje, y en ese caso los valores serán MessagePart = 1, EndPart= True.
No se permitirá la fragmentación de un mismo SKU en mensajes distintos dentro de la misma cola, es
decir, cada SKU vendrá informado obligatoriamente, en todos sus estados existentes, en un mismo
mensaje de la cola.
Las órdenes de movimiento interno permiten realizar ajustes sobre el stock con mercancía propia del
almacén (que no se recibe de otro centro de distribución u otras fuentes). Sirven, por ejemplo, para
devolver las prendas al stock en el caso de que se detecten taras en una mesa de empaquetado o para
realizar auditorías sobre diferentes posiciones del stock.
Se debe disponer de un parámetro de configuración en el que se listarán los diferentes tipos de órdenes
de movimiento interno que se permitirán crear. En caso de que tan sólo haya una opción disponible
configurada en el parámetro de configuración, el combo de “tipo de orden” debe aparecer inhabilitado
con la única opción disponible marcada en el combo. En caso de que haya más de una opción, el combo
debe estar habilitado y ninguna opción marcada por defecto.
ID
Cadena
Descripción
Estado
Fecha creación
Fecha cierre
Usuario creación
Usuario cierre
Unidades diferentes
Para crear una orden de trabajo interno, se debe especificar una descripción, la cadena sobre la que se
trabajará y el tipo de orden que se quiere crear. Entre las opciones deben aparecer las opciones
configuradas en el parámetro de configuración anteriormente citado, las opciones disponibles son:
Gestión de stock: Opción por defecto que existía hasta ahora, mediante esta opción se podrá
realizar ubicación, traspaso de contenido entre posiciones de stock, auditorías, etc.
Salida manual: Opción asociada para almacenes con automatización, mediante esta opción se
podrán realizar movimientos manuales de estanterías específicas para los puestos de trabajo.
En cualquiera de los casos, el crear una orden de trabajo provocará que se envíe al módulo de
almacenamiento dicha información para que la orden pueda ser seleccionada y todos los ajustes que se
hagan estén relacionados con la orden en cuestión. Al ser creada, una orden de trabajo interno estará
en estado “Abierto”.
Una vez se dé por concluida la orden de movimiento interno, podrá cerrarse, debiendo notificar al
módulo de almacenamiento de dicho cierre e impidiendo de esta manera que se pueda seguir
trabajando con ella. En este punto, la orden de trabajo pasará a estado “Cerrado”.
EWMS proporcionará una pantalla desde la que se podrá consultar el estado de stock de un centro
ecommerce en un momento determinado.
Se añadirá información sobre los estados en tránsito hacia el almacén con información sobre
AdvanceShippingNotice (ASNs), PickingTransfer (PTs), Recibido online.
Habrá un botón en la parte inferior derecha con el texto “Sincronización de stock” que lanzará una
sincronización de stock con el resto de módulos que contienen stock.
Para esta sincronización de stock se tendrá que cumplir lo que se detalla en el requisito SGAEWMS-RF-
206-A – Sincronización de stock.
En caso de que haya una sincronización en curso, se mostrará una ventana con el mensaje “Ya hay una
sincronización en curso. Espere para realizar una nueva sincronización“.
SGAEWMS-RF-210-A – Inventarios
Existirá un nuevo tipo de orden de trabajo en ewms para la gestión de inventarios en el almacén
Ecommerce. Al crear una orden de trabajo de este tipo se notificará a las áreas de almacenamiento con
el envío de un DEOT de tipo IN.
El eWMS será quien tenga la gestión de las unidades existentes en otras áreas que no sean de
almacenamiento: unidades en picking, clasificación PTL, empaquetadas, en las bolsas de stock o en
expedición.
Tall
Tipo de producto Modelo Calidad Color a Campaña Año Almacén Id Inventario
Cada línea representará un inventario diferente, los campos obligatorios para cada una de las
líneas del fichero son únicamente tipo de producto, modelo, calidad y almacén. Un mismo SKU
solo podrá estar una vez pendiente de inventariar para un ID de inventario, si aparece repetido
se descartará.
Al añadir los SKUs a la orden se notificará a las áreas de almacenamiento mediante el mensaje
AUDI con tipo de auditoría I que indicará que son SKUs a inventariar.
Cualquier modificación de stock que se produzca durante la realización de esta operativa será
tratada con los mensajes habituales de gestión de stock.
Uds inventariado: serán las cantidades devueltas por las áreas de almacenamiento.
Uds Stock inicial: son las unidades existentes en el momento que se crea el inventario.
Uds Stock actual: son las unidades que el sistema cree que hay en el stock.
Al cerrar la orden de trabajo el sistema persistirá esta información para la fecha de cierre y se podrá
consultar sin que las unidades en los estados transitorios sean modificadas, manteniendo así la foto del
inventario. Las líneas de la orden de trabajo para las que no se haya recibido información pasarán a
estado cerrado.
Valor de stock control= Unidades en almacén en estados configurados como disponibles – unidades
demandadas por pedidos activos en el almacén (de cualquier tipo, transfer out, picking transfer o
pedidos de cliente, órdenes de distribución, repartos). Las unidades de pedido cuya demanda es
conocida pero todavía no está asignada al centro (ej. unidades pendientes de ubicación de preventa,
unidades pendientes de picking transfer, etc.) no deben tenerse en cuenta como demanda activa a la
hora de calcular el valor de stock control.
La cantidad notificada en el mensaje será la del valor de stock control para ese SKU, y se notificará
siempre que sea menor o igual a 0. El mensaje se enviará cada vez que un evento produzca una
variación el valor de stock control para esa referencia mientras este valor sea menor o igual a 0. Esto
significa que el mensaje se enviará en dos tipologías de eventos, lo cual se especificará en el atributo
Reason del NotificationStockControl:
Decremento de stock en estados configurados como disponibles: STOCK-DEC
Incremento de la demanda de stock en pedidos de cualquier tipo: DEMAND-INC
Las unidades existentes en las bolsas de anulados cancelados o taras se podrán tener en cuenta o no
según la configuración de los estados.
Existirá una pantalla desde la que se podrá visualizar la información correspondiente a estos SKUs,
además desde ella se podrá acceder a los pedidos que contienen cada SKU (enlazará a la pantalla de
Pedidos por SKU).
Si CIS o INDOM está en 0 o en menos de 0 para esa referencia en ese almacén no harán nada cuando
reciban el nuevo mensaje NotificationStockControl con valor negativo o cero.
Si en CIS o INDOM tiene mayor cantidad en el disponible, quitará de la oferta el SKU para ese origen de
stock y sólo lo volverá a ofrecer si en algún momento recibe las variaciones que lo dejen en positivo o
alguien manualmente confirma que el stock del SKU está ok.
Todas las órdenes de trabajo relacionadas con las áreas de stock podrán ser pausadas y activadas desde
el sistema.
El eWMS permitirá la creación de un nuevo tipo de órdenes de trabajo de inventario, Inventarios RFID
(IR).
Este tipo de órdenes se gestionarán inicialmente de forma íntegra desde el sistema que recibe y procesa
la orden y únicamente enviará al eWMS las modificaciones en el stock que se produzcan en ella. El
eWMS asimismo informará a los sistemas superiores de estas variaciones en el stock.
Se debe habilitar una pantalla donde se puedan dar de alta áreas para stock de baja prioridad. Las
ubicaciones de dichas áreas almacenarán stock disponible para servir pero no será utilizado para hacer
picking para los pedidos directamente. Si el stock del almacén situado en las ubicaciones actuales no es
suficiente para cubrir los pedidos y los picking transfer, se podrá acceder a estas zonas del almacén de
baja prioridad y realizar el movimiento de la mercancía a ubicaciones aptas para realizar picking. Las
zonas del almacén de baja prioridad podrán estar situadas dentro del mismo edificio o en naves
contiguas.
17. Formulario de inserción de áreas: se deben cubrir los siguientes datos para poder dar de alta
una ubicación nueva para el stock de baja prioridad:
o Descripción: nombre del área
o Área: se especifica el área del almacén donde está situada la ubicación.
o Pasillo: pasillo a configurar.
o Stock: posición específica dentro del pasillo, planta y edificio donde se va a configurar
la nueva ubicación.
Botonera:
o Añadir: cuando se pulsa este botón se almacenan los datos introducidos en la Base de
Datos y queda configurada una nueva ubicación para el stock de baja prioridad. Se debe
visualizar en la tabla de la parte inferior de la pantalla.
o Limpiar: resetea el formulario de inserción.
18. Listado de áreas configuradas: se puede ver el listado de las ubicaciones configuradas para el
stock de baja prioridad. Los datos a visualizar son:
o Descripción
o Área
o Pasillo
o Stock
En el pie de la tabla se puede ver el recuento del número de registros que se están
visualizando.
19. Botonera:
o Exportar: permite extraer en una hoja Excel el listado de ubicaciones configuradas. Se
extraen los datos que se están visualizando en ese momento.
o Eliminar: permite eliminar configuraciones de ubicaciones realizadas. Se deben marcar
las ubicaciones que se quieren eliminar seleccionando la fila en la tabla y a
Para poder consultar el stock de baja prioridad que se necesita para cubrir los pedidos y los picking
transfer, se dispone de esta pantalla donde para cada sku se pueden ver las unidades disponibles en
cada posición. El usuario podrá elegir el orden en el que quiere visualizar la información mediante el
combo desplegable, ya que le puede interesar ir primero a las posiciones con más unidades para
terminar antes o a aquellas con menos unidades para limpiarlas y dejarlas vacías para ubicar nuevos
artículos. También puede elegir el orden alfabético de las posiciones para ir de forma secuencial a lo
largo de los pasillos.
Cuando se carga la pantalla inicialmente se mostrará la tabla sin datos. El usuario debe elegir primero
el orden en que quiere que se visualicen los resultados mediante las opciones del combo ‘Orden’.
También puede consultar un sku específico. Si no introduce ningún dato en sku se mostrarán aquellos
que cumplen las siguientes características:
Botonera:
24. Informe: se muestra el listado de los skus necesarios para cubrir los pedidos en el orden
especificado por el usuario hasta cubrir la cantidad demandada. Los datos a visualizar son:
o Sku.
o Cantidad necesaria para cubrir los pedidos.
o Posición donde existe stock del sku en la zona de baja prioridad.
o Unidades disponibles en dicha posición.
25. Botón Exportar: permite extraer la información que se está visualizando en la tabla a una hoja
Excel.
Se añadirá un menú nuevo en el sistema denominado Control de inventario / Inventory control donde se
agruparán todas las operativas relativas al control de inventario:
Debido a esta nueva agrupación, desaparecerán los menús de Inventario y de Movimiento interno.
Además, las órdenes de auditoría se dejarán de gestionar desde el antiguo formulario. La visibilidad y el
acceso al mismo serán gestionados por permisos.
A medida que los usuarios trabajen en el sistema de gestión de stock correspondiente, serán notificadas
las posiciones que se han revisado y se quedará un registro de las posiciones que sobre las que se está
operando.
La información que podrá ser consultada en el formulario por cada orden de trabajo es la siguiente:
Id.
Tipo de orden.
Fecha:
o F. creación.
o F. cierre.
Estado.
Para crear órdenes de trabajo de alguna de las operativas de control de inventario se mostrará un
popup donde se deberá indicar una descripción de la misma y un tipo de orden de trabajo.
Las únicas órdenes de trabajo que se mostrarán en el combo serán para las que tenga permisos el
usuario.
Una vez creada la orden de trabajo, se enviará el DEOT correspondiente a MSR con el tipo de orden que
se ha creado (AR, CR, CS, BA, EB o NR).
Tal y como se había descrito anteriormente, se podrá consultar en el formulario principal una serie de
datos y estadísticas que serán calculadas por la mensajería recibido desde el módulo de gestión de
stock.
Para las órdenes de conteo siempre se recibirán LOCO. Para las de auditoría (o cuando se audite sobre
las de conteo) se enviarán las variaciones de stock habituales y también adicionalmente el mensaje
LOCO.
Este tipo de órdenes de trabajo serán utilizadas para gestionar el proceso operativo de consolidación
guiada de las posiciones de stock, con el objetivo de optimizar el aprovechamiento del espacio físico en
dichas posiciones.
Sólo podrán crearse desde EWMS (desde la pantalla descrita en SGAEWMS-RF-216-A), siguiendo el
proceso detallado en SGAEWMS-RF-216.1-A.
Igualmente, sólo podrán cerrarse desde EWMS (desde la misma pantalla mencionada en el párrafo
anterior). En dicho momento, se notificará este cierre a todas las áreas de almacenamiento
correspondientes (mediante un mensaje FIND).
Este mensaje incluirá dos campos para identificar cada una de las posiciones comunicadas:
- Tipo de rotación: tipo de rotación (baja, media o alta) asociado a la posición (ver SGAEWMS-
RF-022-A para más detalles).
EWMS deberá persistir esa información asociada a cada una de las posiciones de stock
(CONTENEDOR_STOCK), para su posterior uso en aquellos procesos que lo precisen.
Las áreas de almacenamiento mandarán este mensaje con la información de todas las posiciones
existentes en su mapa en el momento en que se produzca el arranque o la reconexión de dicho módulo.
En estos casos se enviará la información relativa a todas las posiciones, no sólo la diferencia con
respecto a la última información notificada.
Además, será posible que, ante ciertos procesos u operativas en el almacén, se envíe este mensaje sólo
para ciertas posiciones en concreto para las que se haya producido algún cambio en la información
asociada.
El mensaje incluye un campo (Mapa completo) con una marca que indica si la comunicación de
información de posiciones que se está realizando es parcial o completa.
El cálculo de la rotación debe ser único para todas las distintas áreas de almacenamiento que existan en
el almacén. Por tanto, dicho cálculo, y los relacionados (las demandas de cada artículo), serán
realizados por el módulo coordinador (EWMS). Los distintos módulos que gestionan las áreas de
almacenamiento deberán tener acceso a los resultados de estos cálculos para cada artículo, para, de
Se define la rotación de un artículo como el número de días estimados hasta agotar su stock en el
almacén, basándose en el stock actual (unidades no demandadas) y la demanda de los últimos días. Es
necesario diferenciar este valor (propio de cada referencia que pueda existir en el almacén) del tipo de
rotación de un bulto o de una zona o posición del almacén (que se describen con mayor detalle en
SGAEWMS-RF-022-A).
Para un SKU A, las unidades no demandadas son las unidades en el stock global del almacén (sin tener
en cuenta taras ni bloqueado ni cualquier otro estado no disponible) menos las actualmente
demandadas para cualquier tipo de salida excepto transfer out cargados a mano:
Tanto en el stock global como en las unidades demandadas se tendrá en cuenta todo el stock y la
demanda del almacén (teniendo en cuenta contenedores de stock intermedios, como los contenedores
de picking, empaquetado, expedición…), y teniendo en cuenta pedidos/salidas que no se encuentren ya
finalizados o en cualquier estado de cancelación o incorrecto). Además, no se tendrán en cuenta solo
pedidos y órdenes dados de alta en los últimos N días, sino que se tendrán en cuenta todos aquellos que
conformen la demanda actual del almacén, según lo definido en este párrafo.
Por ejemplo:
Existirá un nuevo monitor de ejecución periódica (por defecto, se ejecutará una vez al día),
RotationMonitor. que se encargará de calcular y persistir en BBDD una serie de valores para cada SKU
que exista en el almacén:
- Demanda en los últimos N días (Demanda LND). Se tendrán en cuenta unidades de todos los
tipos de reparto excepto transfer out cargados a mano (cuadrante, reposición a tienda, picking
transfer…). Se calculará como las unidades demandadas (según los teóricos correspondientes:
pedidos, órdenes de reparto a tienda…) para la referencia en cuestión durante los últimos N
días (desde el día –N a las 00:00 hasta el momento actual). La fecha de referencia será la fecha
de alta del pedido u orden de distribución correspondiente. No se tendrán en cuenta unidades
cuya demanda finalmente fue anulada, que se encuentren en pedidos u órdenes de distribución
en cualquier estado de cancelación o incorrecto.
- Rotación (teniendo en cuenta los últimos N días). Se calcula como:
Uds no demandadas ( A )
Rotaci ó n( A)=N∗( )
Demanda LND ( A)
En este cálculo hay que tener una consideración adicional: el valor mínimo de rotación de un
artículo es 0. Por lo que cualquier resultado negativo daría un valor de 0.
- Demanda en los próximos 2N días. Se calcula a partir de la demanda en los próximos N días,
usando ese mismo de coeficiente de ajuste:
- rotation.calculation.days: Número de días (N) que se tienen en cuenta a la hora de calcular las
demandas y la rotación de un artículo. El valor por defecto es 7.
- rotation.calculation.adjustment.coefficient: Coeficiente de ajuste utilizado para transformar la
demanda de los últimos N días en la prevista para los próximos N y 2N días. El valor por defecto
es 0.8.
- rotation.calculation.novelty.days: Número de días durante los que un artículo se considera
novedad. De forma que hasta que hayan pasado ese número de días desde que aparece en el
almacén no se comenzará a calcular sus demandas y su rotación, quedando con un valor vacío
mientras tanto. Es decir, si para un artículo los datos de demanda y/o de unidades ubicadas no
se remontan más de los días indicados por este parámetro, dicho artículo debe seguir
considerándose novedad (no debe hacerse el cálculo de sus rotación y ésta debe quedar con
valor vacío). El valor por defecto es 3.
En todos estos cálculos no se tendrá en cuenta nunca la Campaña. Es decir, la rotación se calcula
a nivel de SKU (Tipo de producto/Modelo/Calidad/Color/Talla), Centro de Compra y Cadena.
Para ello, se tienen en cuenta todas las demandas en los últimos N días y todas las unidades
disponibles en el almacén para esa referencia, independientemente de qué campaña tengan
asociada.
EL módulo coordinador recibirá tanto en el mensaje IPOS, enviado por el módulo de almacenamiento, la
información de si esos contenedores pertenecen a la zona de picking manual o de picking automatizado.
Esta información deberá ser almacenada y actualizada con cada mensaje para permitir crear oleadas en
base a la ubicación del stock.
Tal y como se indica en SGAEWMS-RF-009.3-A y SGAEWMS-RF-010.1-A, cada vez que EWMS detecte una
discrepancia con respecto al teórico (tanto por encima como por debajo del mismo) en una Orden de
Entrada (para los tipos de orden donde aplique), enviará un mensaje AUDI a cada área de
almacenamiento necesaria, para disparar el proceso de auditoría de posiciones afectadas. En dicho
mensaje deberá indicarse (en el campo OT Operación) el id de OT de Auditoría de entradas sobre bolsa
de ajustes que le corresponda al ajuste en cuestión. Será siempre la OT de este tipo que exista activa
en el sistema. Si no existe ninguna activa, se creará una nueva automáticamente (enviando el
correspondiente DEOT).
Este tipo de salidas pueden darse por varios motivos: enviar la mercancía a otro almacén o a una
tienda, retirar la mercancía de la venta por defecto de fabricación o por temas legales, etc.
Para conocer qué prendas deberán ser sacadas del almacén, el sistema recibirá una notificación con las
referencias, cantidades y destinos a los que deberán ser enviados, así como el transportista que se
encargará de recoger la mercancía.
El sistema deberá persistir toda esta información para poder gestionar posteriormente el seguimiento
del picking, el reparto y la expedición de dicha mercancía.
Para comenzar a trabajar con una salida de mercancía, deberá crearse una orden de trabajo de salida
de mercancía. El sistema requerirá que el usuario introduzca un nombre y le asocie una salida de
mercancía que no esté asignada a ninguna otra orden, es decir, en estado “Nuevo”.
En este punto, deberán crearse las líneas de distribución en las que para cada sku, demanda y destino,
se persistirá el progreso del picking y del reparto.
El estado de la orden de trabajo de salida de mercancía creada será “Abierto”, mientras que el transfer
out asociado pasará a estado “Asignado”.
Una orden de trabajo de salida de mercancía podrá estar en los siguientes estados:
La gestión del picking y del reparto de la mercancía será llevada a cabo en el módulo de
almacenamiento (MSR), el cual informará al sistema de todas las acciones que se realicen para controlar
el progreso de la operación.
Ante dichas notificaciones, deberá mantenerse actualizado el stock disponible, así como el faltante de
prendas para cubrir la demanda especificada para cada destino.
El sistema deberá ser informado de qué prendas van en cada bulto, para poder mantener dicha
asociación.
Ya que el módulo de almacenamiento y reparto permite hacer picking de prendas a un bulto sin
comprobar la sección, este mismo comportamiento deberá ser soportado por el sistema.
Una vez se haya completado la demanda de todos los destinos, lo cual significará que todas las líneas de
distribución se habrán finalizado, el reparto habrá acabado y la orden de trabajo de salida de
mercancía pasará a estado “Finalizado”.
El EWMS permitirá que desde el MSR se realice un traspaso de mercancía entre bultos de Picking. El MSR
informará de ello si se produce y el eWMS procesará el mensaje (TCON) moviendo la cantidad de skus
notificada del origen al destino. Si para el eWMS no existiese la mercancía en el origen la crearía en el
destino generando la variación de stock que corresponda.
Una vez se haya cubierto la demanda para todos los destinos, el usuario deberá cerrar la orden para que
se confirme su salida a los sistemas de los que partió la petición.
Al intentar el cierre de una orden de trabajo el sistema comprobará si existen contenedores de reparto
activos para los que habiéndose recibido información de picking (PICK) no se haya recibido la
finalización del reparto (REPA), en caso de que existan se mostrará una advertencia al operador y una
tabla con los contenedores en este estado para que el operador pueda cerrarlos en las áreas de reparto
correspondientes.
En la parte inferior de la tabla aparecerá un nuevo botón “Forzar cierre”, gestionado con un permiso
individual, que permitirá notificar como repartido todo lo picado que no haya sido recibido como
repartido. La otra opción que tendrá el operador será “Cancelar” que hará que se cierre la tabla y
vuelva a la pantalla de órdenes de trabajo.Deberá notificarse qué prendas van en cada bulto, así como
qué bultos van en cada palé y cuál es el transportista al que se le entrega la mercancía. Además se
informará de características de los contenedores como sus dimensiones o el peso.
En estos pedidos, que serán identificados con un id único y una descripción se recibirá la demanda a
repartir para un conjunto de SKUs con un conjunto de localizaciones como destino.
Existirá una pantalla desde la que se podrán visualizar los repartos a localizaciones recibidos de
sistemas externos.
En esta pantalla se visualizará ordenado por fecha de creación los siguientes datos:
Cadena.
Código de orden.
Descripción.
Descripción Ciclo (DistributionCycleDescription)
Fecha de creación
Número tiendas incluidas en el pedido, con el número de localizaciones destino distintas
incluidas en la orden (una tienda que tenga pedido para varias secciones se contaría una sola
vez).
Número unidades, con la suma de las unidades de todas las tiendas solicitadas.
Estado, con valores Nuevo, Asignado, Cerrado, Cancelado.
Orden de trabajo, con el id de la orden de trabajo si ya fue asociada a alguna.
Además, existirán filtros por cadena, código de orden, fecha de creación, estado y tienda.
En la parte inferior de la pantalla existirán dos pestañas, una para ver Unidades por SKU (donde se
visualizará información de la demanda por SKU, tipo de artículo – paquetería o confección -, tienda,
sección, aparte, las unidades solicitas, picadas, repartidas, confirmadas y el estado) y una segunda
pestaña con información de Unidades por localización (donde se visualizará la demanda en unidades
agrupada por tienda, sección, aparte, indicando también lo picado, repartido y confirmado).
Existirá una pantalla en el eWMS donde se puedan visualizar las órdenes de trabajo de reparto a
localización.
En esta pantalla se visualizarán ordenado por fecha de creación los siguientes datos:
IDs orden de trabajo. Se podrá buscar por más de un ID, separándolos por comas.
Cadena.
Descripción.
Fecha de creación
Estado
Número tiendas incluidas en la orden, con el número de localizaciones destino distintas
incluidas en la orden (una tienda que tenga pedido para varias secciones se contaría una sola
vez).
Unidades solicitadas.
Unidades picadas.
Unidades repartidas.
Unidades confirmadas, según lo obtenido del proceso RFID.
Unidades a notificar, según el resultado del proceso RFID y lo que está pendiente de ser
procesado.
Además existirán filtros por id orden de trabajo, cadena, fecha de creación, estado y tienda.
En la parte inferior de la pantalla existirán cuatro pestañas, la primera visualizará las unidades por SKU
(con información de SKU, T/S/A, solicitado, picado, repartido, confirmado, a notificar), la segunda las
unidades por bulto (con información de bulto, SKU, T/S/A, picado, repartido, confirmado, a notificar),
la tercera con unidades por localización (con información de T/S/A, solicitado, picado, repartido,
confirmado, a notificar) y una cuarta con unidades por distribución (con el código y descripción de la
distribución, solicitado, picado, repartido, confirmado, a notificar).
El sistema presentará un menú para crear una orden de trabajo asignándole una descripción y uno o
varios repartos a localización.
El eWMS permitirá del mismo modo generar olas para órdenes de trabajo ya creadas, esta nueva ola
permitirá seleccionar nuevos pedidos de los existentes en estado nuevo.
En el cierre de estas órdenes el eWMS enviará la información de lo repartido que haya pasado por RFID y
para aquellos bultos que no han pasado la operación RFID tendrá un parámetro de configuración
distribution.notify.only.RFID.boxes que determinará si el contenido se envía o no (ver descripción
detallada de dicho parámetro de configuración en SGAEWMS-RF-601.7.1–A). Dicha información se
enviará en el mensaje EXPEDITION_FINISHED.
Además, si todas las líneas del reparto están cerradas se enviará el mensaje RESERVE_FULFILLED
indicando todas las órdenes de trabajo (IDs de expedición) en las que se repartió alguna mercancía del
reparto en cuestión, pudiéndose dar el caso de que se envíe sin ningún ID de expedición. Además, en
orden de trabajo (OT) se puede estar tratando uno o varios distributionOrder (DO) y éstos a su vez se
pueden estar tratando en varias OTs, el sistema debería de contemplar las siguientes casuísticas:
Así mismo, la DO transitará a estado nuevo si todas sus líneas están en estado nuevo tras el cierre de la
OT. Si todas sus líneas pasan a estado cerrado, la DO pasará también a estado cerrado.
El sistema podrá recibir una notificación de cancelación de un reparto de mercancía. Esta notificación
podrá recibirse únicamente de manera síncrona tal y como se describe en el requisito SGAEWMS-RF-
413.1-A. Sólo se procederá a cancelar un reparto si está en estado “Nuevo” si ninguna de las líneas del
reparto está asignada a una OT activa. Si se hubiera generado una OT asociada a una línea o un
conjunto de líneas destinadas a una Tienda, y solo si esa OT ya se hubiera cerrado, habiéndose enviado
el EXPEDITION FINISHED correspondiente, y no estando el resto de líneas de reparto asignadas a ninguna
OT activa, el reparto podrá cancelarse externamente para todas las líneas que no hayan sido repartidas.
En tal caso, se pasará a estado “Cancelado”, Y el sistema impedirá que el reparto, o cualquiera de sus
líneas, se puedan asignar a una orden de trabajo. Una vez se valide que la cancelación se puede
realizar, se cumplirán los siguientes pasos:
Se cerrarán las líneas y se enviará un ReserveFulfilled vacío (si ninguna línea se repartió) o un
ReserveFulfilled con la información de la OT u OTs de aquellas líneas que sí fueron repartidas.
En ningún caso se enviará el ReserveFulfilled mientras el reparto no sea cancelado.
Se notificará el éxito de la cancelación al sistema emisor de la petición (de manera síncrona
también). Además, se notificará de manera asíncrona a los sistemas interesados que la
cancelación se ha realizado de manera satisfactoria como se describe en el requisito SGAEWMS-
RF-413.6-A. (mensaje WMSXMLOutboundCancelled)
En caso de recibir una petición de cancelación para un reparto en estado “Asignado”, “Cerrado” o
“Cancelado” se descartará la operación, se alarmará al usuario de este hecho y se notificará al sistema
que realizó la petición que no se ha podido llevar a cabo la cancelación indicando la razón para la
misma.
El sistema permitirá anular distributionOrder (DO) si ninguna de sus líneas está asignada a una orden de
trabajo activa en el formulario del caso de uso de repartos a localización y de traspasos. Existirá un
botón Anular / Cancel que estará disponible si el usuario tiene permisos. Habrá que tener en cuenta las
siguientes casuísticas.
Este botón estará activo si se tiene seleccionada una DO que no esté asignada a ninguna OT
activa.
En caso de que se intentase cancelar una DO que estuviese asignada a una OT activa, se
mostrará mensaje un “El reparto está asociado a una orden de trabajo activa / The distribution
assgined to an active work order”.
Una vez se valide que la cancelación se puede realizar, se cerrarán las líneas no cerradas y se enviará
un ReserveFulfilled indicando las posibles OTs en las que se repartió, o vacío si ninguna línea fue
repartida.
El botón Ver OTs estará activo si hay una y solo una DO seleccionada. En el momento de pulsar dicho
botón, se mostrará la pestaña de órdenes de reparto a localización con la búsqueda solamente por los
IDs de OTs relacionados con la DO. El resto de los filtros no aplicarán, tal y como ya se hace
actualmente a la hora de buscar por ID en esa pantalla.
Desde el eWMS se podrán crear órdenes de reparto en áreas de este tipo. Se tratará de un nuevo tipo de
orden de trabajo: Reparto por totales (batch sorting).
Las tareas de picking (demanda total para los SKUs en la orden) serán enviadas a las áreas de
almacenamiento en el orden en que se configure para éstas, mientras que las tareas de reparto
(asignación de SKUs a localizaciones destino) se enviarán a áreas de clasificación.
El sistema permitirá la creación de este tipo de órdenes solicitando la cadena (si hay más de una posible
en el sistema), la descripción, el área de reparto destino y la tabla o tablas de reparto con las que se
realizará la distribución, que además servirán para filtrar el subconjunto de localizaciones destino de
todas las contenidas en la orden. Se podrán añadir nuevas tablas de reparto a una orden ya creada
desde un botón en esta misma pantalla siempre que la orden no esté cerrada.
El sistema permitirá generar olas asociadas a órdenes de trabajo, dejando que el usuario seleccione
cuáles de las órdenes recibidas como reparto a localización (SGAEWMS-RF-306-A) o creadas en el propio
sistema como salidas de mercancía (SGAEWMS-RF-300-A) deben ser incluidas en la orden. No se
permitirá mezclar órdenes de los dos tipos anteriores.
Además se le mostrarán las tablas de reparto seleccionadas, por las que se hará el filtrado de la ola.
El sistema contará con una pantalla de gestión de tablas de reparto, en la que se visualizarán las tablas
existentes para las diferentes cadenas, y su asociación de destinos a localizaciones/secciones/apartes.
Se permitirá crear tablas de reparto importando un fichero, previamente el usuario deberá seleccionar
la cadena (si hay más de una posible), un código (numérico de 2 dígitos) y una descripción.
El sistema controlará que un destino solo está asignado a una localización/aparte en el fichero y
mostrará un error suficientemente explicativo si sucediese que más de una localización/aparte tiene un
destino. Se permitirá que dos o las tres secciones de una localización/aparte estén asignadas al mismo
destino.
Desde la pantalla de gestión de tablas de reparto se permitirá el envío de estas tablas a las diferentes
áreas de reparto así como la eliminación de las mismas, para esta eliminación la tabla no podrá estar
relacionada con ninguna orden de trabajo no cerrada.
El proceso de cierre de una orden de reparto de este tipo será muy similar al de SGAEWMS-RF-307.3-A,
si se trata de un reparto a localización se enviará la información de los bultos repartidos en la orden
que hayan pasado los procesos RFID, y si el parámetro distribution.notify.only.RFID.boxes así lo indica
también lo contenido en bultos que no hayan pasado por RFID mediante el mensaje
EXPEDITION_FINISHED, pues no existirá proceso de expedición posterior (ver descripción detallada de
dicho parámetro de configuración en SGAEWMS-RF-601.7.1–A).
Para que una orden de reparto por totales pase a cerrada tendrán que producirse dos eventos:
1) Cierre de la orden en el eWMS.
2) Recepción del FIND desde el área de reparto.
Cuando el operador realiza el cierre de reparto en el eWMS éste pasará la orden a estado cerrando y
enviará mensajes de cierre de orden de trabajo a las áreas de almacenamiento, reparto y RFID.
El mensaje FIND enviado al área de reparto hará que esta área informe de todos los contenedores que
están en el proceso de reparto y no fueron previamente notificados. Posteriormente el área de reparto
enviará un mensaje FIND y será con la recepción de éste cuando el eWMS dé la orden por cerrada,
desencadenado todos lo descrito anteriormente y liberando el stock reservado asignado a ella.
Además del cierre descrito en el RF-308.4 se permite que una orden sea cerrada desde el área de
reparto (y por lo tanto se reciba el FIND de ésta). La recepción de este mensaje hará que el estado de
la orden pase a ser Clasificado (Sorted) ya que el proceso de la orden no ha finalizado totalmente.
En este estado se impedirá la generación de nuevas oleadas hacia las áreas de almacenamiento y
reparto pero se continuará con el procesamiento de la restante mensajería como si la orden estuviese
activa, incluyendo el proceso de RFID, que será el que más probablemente esté pendiente de ser
efectuado.
Se necesitará el cierre posterior de la orden desde eWMS para concluir el tratamiento de la orden.
El eWMS deberá ser capaz de gestionar las peticiones de faltas desde áreas de reparto y solicitar el
stock a las áreas de almacenamiento.
Después de realizar el reparto en las áreas de reparto, éstas pueden enviar un mensaje FALT indicando
las unidades que han quedado pendientes por cada SKU para cada una de las TSAs.
El eWMS deberá agrupar todas estas faltas por SKU y enviar un nuevo pedido de stock (PDAR con marca
de faltas) al área de almacenamiento para que se vuelvan a picar esas unidades.
En estas solicitudes, que serán identificados con un id único y una descripción, se recibirá la demanda a
repartir para un conjunto de SKUs con un conjunto de localizaciones como destino.
Todas las pantallas creadas en la GUI para la gestión de los traspasos se incluirán en el menú de Reparto
(Distribution):
Transferencias de stock (Transfer out)
Órdenes de transferencia de stock (Transfer out work orders)
Reparto a localización (Distribution to location)
Órdenes de Reparto a localización (Distribution to location work orders)
Traspasos (Transfers)
Órdenes de traspaso (Transfers work orders)
Tablas de reparto (Distribution tables)
Aunque este tipo de reparto es muy similar al de reparto a localización, existe una diferencia
importante ya que los bultos de expedición deben ir con etiqueta de 24 dígitos (Cassiopea).
SGAEWMS-RF-309-A – Traspasos
Existirá una pantalla desde la que se podrán visualizar las solicitudes de traspaso recibidas de sistemas
externos. Dichas solicitudes serán recibidas mediante el mensaje DISTRIBUTION_ORDER, el cual incluirá
como nuevos elementos opcionales el tipo de almacenamiento, tipo de movimiento, subtipo de
movimiento, campaña a nivel de orden de distribución y año a nivel de orden de distribución.
El sistema creará un nuevo traspaso cuando el tipo de almacenamiento sea “RETURN BOX”. Si en dicho
elemento se indica cualquier otro valor o no viene incluido en el DISTRIBUTION_ORDER, se creará un
reparto a localización tal y como se define en el requisito (SGAEWMS-RF-306-A – Reparto a
localización). Por tanto, el tipo de almacenamiento será el que defina si una solicitud es un traspaso o
no para el sistema.
Todos los nuevos elementos opcionales descritos deberán persistirse cuando la solicitud sea de tipo
traspaso, ya que serán necesarias más adelante tal y como se especificará.
La pantalla de traspasos será igual a la de reparto a localización y se visualizarán ordenados por fecha
de creación los siguientes datos:
Cadena.
Código de traspaso.
Descripción.
Fecha de creación
Número de localizaciones incluidas en la solicitud de traspaso, con el número de localizaciones
destino distintas incluidas en la orden (una tienda que tenga pedido para varias secciones se
contaría una sola vez).
Número unidades demandadas, con la suma de las unidades solicitadas para todas las
localizaciones.
Estado, con valores Nuevo, Asignado, Cerrado, Cancelado.
Orden de trabajo, con el id de la orden de trabajo si ya fue asociada a alguna.
Además, existirán filtros por cadena, código de orden, fecha de creación, estado y localización destino.
Tal y como ocurre con las DO en la pantalla de repartos a localización, el sistema permitirá al usuario
anular las DO, ver las OTs relacionadas y la cancelación externa de las DO mediante WS rest (SGAEWMS-
RF-307.5-B, SGAEWMS-RF-307.6-B y SGAEWMS-RF-307.4-B respectivamente).
Existirá otra pantalla en la que se podrán visualizar las órdenes de trabajo de traspaso.
En esta pantalla se visualizarán ordenados por fecha de creación los siguientes datos:
IDs orden de trabajo. Se podrá buscar por más de un ID, separándolos por comas.
Cadena
Descripción
Estado
Fecha de creación
Unidades solicitadas.
Unidades picadas.
Unidades repartidas.
Unidades confirmadas, según lo obtenido del proceso RFID.
Unidades a notificar, según el resultado del proceso RFID y lo que está pendiente de ser
procesado.
Número tiendas incluidas en la orden, con el número de localizaciones destino distintas
incluidas en la orden (una tienda que tenga pedido para varias secciones se contaría una sola
vez).
En la parte inferior de la pantalla existirán tres pestañas, la primera visualizará las unidades por SKU
(con información de SKU, T/S/A, solicitado, picado, repartido, confirmado, a notificar), la segunda las
unidades por bulto (con información de bulto, SKU, T/S/A, picado, repartido, confirmado, a notificar) y
la tercera con unidades por distribución (con información de T/S/A, solicitado, picado, repartido,
confirmado, a notificar).
Desde esta pantalla se podrán crear órdenes de trabajo o cerrar las existentes.
La pantalla será similar a la de reparto a localización pero no se incluirán las columnas de modo de
distribución y área de reparto ni el botón de crear ola.
El sistema presentará un menú para crear una orden de trabajo asignándole una descripción y un
traspaso no asignado a ninguna otra orden.
El sistema recibirá el mensaje PICK por cada prenda que se pique en el módulo de reparto. Dicha
información debe ser actualizada y persistida para cada SKU de manera que desde la pantalla de
órdenes de traspaso se pueda realizar el seguimiento de dicho reparto.
Cuando se reciba la notificación de lo repartido en un bulto por parte del módulo de reparto (REDV) el
sistema generará un mensaje ETMA hacia el módulo de etiquetado (GLS). Para la generación del ETMA,
el sistema deberá utilizar el tipo y subtipo de movimiento del traspaso que fueron persistidos cuando se
recibió la solicitud de traspaso (SGAEWMS-RF-309-A – Traspasos). Además, para calcular el valor del
campo “temporada” que se incluye en el ETMA, deberá invocar un procedimiento existente en Maestros
usando la campaña, el año (ambos también persistidos previamente) y el país destino del traspaso.
El sistema de etiquetado responderá con un mensaje ETIM cuando el bulto se reetiquete en dicho
módulo. El mensaje ETIM indicará la matrícula de 24 dígitos asociada al bulto de picking. Dicha
matrícula deberá ser persistida por cada bulto para poder enviarla en el mensaje que se generará hacia
los sistemas externos al cierre de la orden de trabajo.
Al llegar el mensaje ETIM, el sistema deberá informar al módulo gestor del RFID del teórico del bulto
con un mensaje RETE. La gestión del proceso RFID será la misma que existe hoy en día para los repartos
En el cierre de estas órdenes, el sistema enviará la información de lo repartido que haya pasado por
RFID. Para aquellos bultos que no hayan pasado la operación RFID existirá un parámetro de
configuración distribution.notify.only.RFID.boxes que determinará si el contenido se envía o no (ver
descripción detallada de dicho parámetro de configuración en SGAEWMS-RF-601.7.1–A). Se generará el
mensaje EXPEDITION_FINISHED, así como el RESERVER_FULFILLED tal y como se realiza para los repartos
a localización y que se describe en SGAEWMS-RF-307.3-A.
Si en el momento del cierre de la orden de trabajo existen bultos para los que no se ha recibido el
cierre desde el módulo de reparto o no se ha recibido confirmación de etiquetado por parte del módulo
de etiquetado, se avisará de dicha circunstancia con un popup informando de los bultos que se van a
descartar y su contenido, pudiendo aceptar o cancelar la acción de cierre. Si se acepta, dichos bultos
no serán incluidos en el mensaje de confirmación de cierre y se enviarán ajustes negativos de las
cantidades no confirmadas sobre el estado desde el que partían las prendas picadas (disponible, tara,
bloqueado…).
Siempre que se envíe un mensaje EXPEDITION_FINISHED, ya sea para repartos a localización o traspasos,
dicho mensaje se troceará por cada una de las localizaciones destino presentes en una orden de trabajo
de estos tipos. En caso de que la información de la expedición de una localización supere el tamaño
definido, no se trocearan bultos. Se incluirá la marca de MessagePart (empezando en 1 en cada trozo de
expedición) y EndPart, para que los receptores puedan detectar cuando han recibido todos los mensajes
de una misma expedición.
Los tipos de bolsa de stock que se podrán utilizar como bolsa origen serían las siguientes:
El sistema permitirá visualizar las órdenes de salida libre desde una pantalla con la siguiente
información:
- ID
- Cadena
- Descripción
- Estado
- Tipo
- Origen
- Destino
- Bolsa Origen
- Fecha Creación
- Fecha Cierre
- Bultos picados
- Unidades picadas
- Bultos repartidos
- Unidades repartidas
- Bultos confirmados
- Unidades confirmadas
- Bultos etiquetados
- Unidades etiquetadas
- Bultos a notificar
- Unidades a notificar
Así mismo, para una orden seleccionada, también se podrán ver los detalles de unidades por SKU y/o
por bulto. Se dispondrá de las siguientes pestañas:
- ID. Si hay algo especificado en este filtro, cuando se pulse el botón buscar, el resto
de los filtros no aplicarán y se mostrarán como sombreados.
- Cadena.
- Estado.
- Tipo.
- Origen.
- Destino.
- Bolsa origen.
- Fecha creación.
- Fecha cierre.
La pantalla tendrá la siguiente estructura (se muestran las tres pestañas del detalle en la parte
inferior):
- Id.
- Cadena.
- Descripción.
- Estado.
- Tipo.
- Origen.
- Bolsa origen (opcional).
- Fecha creación.
- Fecha cierre.
- Descripción.
- Cadena
- Localización: CD de entre los asociados a la cadena seleccionada. Si la cadena solo
posee un CD asociado, se seleccionará automáticamente.
- Bolsa: Bolsa origen de la que se repartirá la mercancía. Será opcional para este tipo
de órdenes.
Así mismo, si se ha seleccionado una bolsa origen, se descontarán de la bolsa las unidades que se hayan
repartido y se informará el estado correspondiente en cada una de las líneas que se informan en los
bultos. Si no se hubiese seleccionado bolsa origen o si hubiese alguna unidad repartida en toda la orden
que no estuviese contenida en la bolsa, se informarían las líneas correspondientes como afloradas. Estos
aflorados, se informarían en los últimos bultos. Es decir:
El envío de estos EXPEDITION_FINISHED está sujeto a la lógica de partición del mensaje, definida en
SGAEWMS-RF-311-A.
- Comprobará:
o Si la OT informada no existe, el sistema generará una alerta y traza de log
informando del hecho.
o Si la OT informada se encuentra en un estado diferente de Activa o Abierta,
el sistema generará una alerta y traza de log informando del hecho.
- Si las comprobaciones anteriores son correctas, el sistema:
o Si la orden se encontraba en estado Abierta, pasará a estado Activa
o Persistirá el bulto escaneado, así como todo el contenido leído, asociándolo
a la OT.
o Si la orden de trabajo tenía asociada una bolsa origen, se irán descontando
de la misma las unidades repartidas informadas en el RECO. Si se repartiese
alguna unidad que no está en la bolsa o no hubiese bolsa, se informará de
variaciones de stock positivas sobre el estado aflorado o emerged. En el
caso de detectar unidades afloradas, para este tipo de órdenes de trabajo
no debe hacerse ningún tratamiento adicional de envío de ajustes negativos
sobre el disponible o retención de ajustes positivos en la bolsa de ajustes,
ya que en este caso ya se habrán comunicado previamente los InvAdj
negativos correspondientes durante el proceso de vaciado del stock de las
posiciones y SKUs afectados. Simplemente, dicho estado de stock (aflorado)
- Descripción de la OT
- Cadena
- CD. Este campo se rellenará automáticamente al seleccionar la cadena, si solo
existe un CD para la misma en el SGA Físico en cuestión.
- Localización Destino
En dicha pantalla, el botón de Cancelar permitirá abortar el proceso de creación de la nueva orden,
regresando a la pantalla anterior sin persistir la OT.
Al pulsar sobre el botón Crear, se comprobará que todos los campos han sido debidamente rellenados.
De no ser así, se alertará al usuario de que no se puede persistir la nueva OT y se le indicará el motivo.
Si los datos están debidamente cubiertos, se comprobará si existe otra OT del mismo tipo (salida libre
de taras) abierta o activa con la misma descripción. En dicho caso, el sistema alertará al usuario de este
hecho y le solicitará un nuevo nombre. Si todos los datos son correctos, se procederá a crear la nueva
OT (inicialmente, en estado Abierta).
Con cada nueva orden creada, se comunicará dicha creación a MSR, mediante un mensaje DEOT. En
dicho mensaje se indicará el tipo de orden ST (Salida Taras), el tipo de movimiento perteneciente al
Traspaso de Taras (id 11) y no se indicará subtipo de movimiento.
Este tipo de órdenes permitirán el picking, etiquetado y expedición de mercancía con estado de stock
Tara ubicada en posiciones de MSR. La particularidad de este tipo de OT con respecto a los repartos es
que son autogeneradas. Es decir, no se recibirán Órdenes de Distribución para repartirlas.
- Etiqueta contenedor
- Etiqueta bulto (identificador del bulto a notificar)
- Localización (destino)
- Sección
- Aparte
- Unidades picadas
- Unidades repartidas
- Unidades a notificar
Además, se mostrará una fila de totales para indicar las unidades picadas, repartidas y a notificar de
cada uno de los grupos de bultos (etiquetados y sin etiquetar).
“Se va a proceder al cierre de la OT con bultos sin etiquetar. Dichos bultos no serán notificados. ¿Desea
cerrar igualmente?”
El procesado de la orden, así como el intercambio de mensajería con los sistemas externos puede verse
más en detalle en el requisito SGAEWMS-RF-313.7-A.
Además, por cada bulto (matrícula de 10 dígitos) picado mediante este proceso, EWMS recibirá, desde
MSR, un mensaje REPA. En este mensaje, MSR no informará los campos Tienda, Sección y Aparte, ni
tampoco el número de bulto. Al recibir uno de estos mensajes REPA, el sistema deberá generar un ETMA
para dicho bulto, que será enviado a GLS, para poder generar la etiqueta de 24 dígitos correspondiente.
Este mensaje se compondrá con el tipo de movimiento perteneciente al Traspaso de Taras (id 11), sin
subtipo de movimiento y se realizará el cálculo del campo que identifica si se trata de Temporada o
Saldo invocando un procedimiento existente en Maestros usando la campaña, el año y el país destino del
traspaso. La Sección a utilizar en los bultos de este tipo de órdenes deberá ser calculada de la siguiente
manera: tendrá que ser la sección mayoritaria en el bulto. Es decir, la que tengan un mayor número de
SKUs de los informados por MSR en el correspondiente PICK de la posición cuyo vaciado ha originado el
bulto que se está etiquetando. El Aparte será siempre el mismo: aparte 0.
Cuando cada bulto se reetiquete en el módulo de etiquetado, este enviará al EWMS un mensaje ETIM.
Dicho mensaje indicará la matrícula de 24 dígitos asociada al bulto de picking. La matrícula indicada
deberá ser persistida para cada bulto, y será enviada en el mensaje que se generará hacia los sistemas
externos al cierre de la orden de trabajo.
El estado que se utilizará en la comunicación de cada uno de los artículos informados en las líneas de
los bultos deberá ser el que corresponda a la posición de donde fueron picados en MSR, que habrá sido
previamente informada en el correspondiente mensaje PICK.
El resto de campos necesarios se cubrirán con los datos asociados a la orden de trabajo en cuestión.
El envío de estos EXPEDITION_FINISHED está sujeto a la lógica de partición del mensaje, definida en
SGAEWMS-RF-311-A.
La primera de este tipo de peticiones que se describa será la solicitud del estado de la cancelación de
un pedido, para la cual, dado un pedido, el sistema deberá responder si su estado es “Cancelado” o no.
Se podrán recibir cancelaciones de pedido, ya sea por decisión del cliente o por otras causas ajenas al
almacén. En este caso, se lanzará la acción descrita en el requisito SGAEWMS-RF-105-A-Cancelación y
cancelación definitiva de pedidos y se contestará con el resultado de la acción, la cual podrá ser
satisfactoria, que no se ha encontrado el pedido (por ejemplo, porque ya ha sido expedido), que el
pedido ya ha sido cancelado, que el pedido ya se ha empaquetado u otros motivos, para los cuales será
necesario incluir una descripción del resultado.
Ante una solicitud de este tipo para un pedido concreto, el sistema deberá responder qué acciones se
pueden llevar a cabo sobre un pedido en base al estado actual en el almacén. Dichas acciones podrán
ser las siguientes:
Se podrá cancelar un pedido siempre que no haya sido expedido en el almacén y se podrá actualizar la
dirección de facturación o de envío siempre que no se hayan generado aún las etiquetas para dicho
pedido.
1. Satisfactorio.
2. Pedido no encontrado.
3. Pedido cancelado.
4. Pedido etiquetado.
5. Otros motivos.
El sistema deberá responder con la información detallada de un pedido concreto cuando se solicite.
Dicha información incluye lo siguiente:
1. Código de pedido.
2. Comentarios realizados sobre el pedido.
3. Fecha de recepción en el almacén.
4. Fecha de la última modificación del estado del pedido.
5. Fechas en las que el pedido fue modificando su estado dentro del almacén y estado al que
transitó.
6. Estado actual del pedido en el almacén.
7. Para cada línea de pedido deberá indicarse la referencia, la cantidad solicitada y el
identificador proporcionado por Ecommerce asociado a dicha referencia.
Esta solicitud sirve para conocer qué cantidad de referencias están en cada estado. Para ello, el sistema
debe calcular las referencias que están en estado recibido, a la venta, dañado y bloqueado.
El sistema debe responder con los códigos de los pedidos que están en estado activo en el almacén. En
este caso, se considerarán pedidos activos todos aquellos que no hayan sido cancelados, expedidos o
sean erróneos.
Este caso es similar al anterior, aunque en vez de los códigos de los pedidos activos en el almacén, el
sistema deberá enviar el número de pedidos activos.
Ante esta solicitud, el sistema deberá calcular y notificar qué cantidad de pedidos existentes en el
almacén están en cada estado posible.
Para una lista de referencias dada, el sistema devolverá para cada estado posible de las referencias la
cantidad existente en el almacén.
Las operaciones a incluir inicialmente en la API son las que se definen en las siguientes subsecciones:
Ante la cancelación correcta de una entrada, el sistema debe generar un mensaje MQ que permita la
notificación asíncrona de dicha cancelación a aquellos sistemas que deseen suscribirse a este tipo de
notificación.
El sistema proveerá un informe en el que dado un intervalo de fechas, mostrará todas las variaciones de
estado de SKU’s en el stock que hayan sucedido. Dicha información deberá poderse filtrar también por
cadena y por SKU. Para cada SKU mostrado, se informará de la cantidad que ha pasado por cada estado
en el intervalo señalado, así como la cantidad total para cada uno de los estados.
El informe de facturación es una versión simplificada del anterior, en el que para un intervalo de
tiempo, el sistema ofrecerá las unidades ubicadas por tipo de orden de trabajo (teniendo en cuenta los
ajustes o auditorías realizados sobre el stock en esa orden), empaquetadas y expedidas por día.
También se mostrará el total de cada dato. Las órdenes que se sacarán en este informe serán:
En el informe de facturación se debe añadir un nuevo filtro con el cual se podrán obtener los registros
del informe en el intervalo comprendido entre las horas:minutos indicados para cada uno de los días
que se incluyan en la búsqueda.
Los resultados que se devuelven son todos los comprendidos entre el 15/04/2017 y el 19/04/2017 pero
solo los correspondientes a las horas entre las 14:30 y las 22:30.
El sistema ofrecerá un informe en el que para una cadena y un intervalo de tiempo, ofrecerá
información de los tipos de caja usados. Para cada tipo de caja se mostrará la cantidad usada, el
porcentaje de uso con respecto al resto de tipos, la media de unidades que se incluyen en dicho tipo de
caja y el peso medio al finalizar el empaquetado. Como siempre, se mostrarán las cantidades totales de
cada dato.
Se podrá crear un informe asociado a cada orden de entrada de mercancía en el almacén, una vez
cerrada, en el que se ofrezcan detalles de la mercancía recibida. Se mostrará la cadena para la que se
ha recibido mercancía, la fecha de inicio y de fin de la operación de entrada y para cada SKU la
cantidad teórica y la recibida realmente, así como la familia a la que pertenece (pantalones, camisas,
etc.) y el precio individual y total de cada prenda en el momento de la recepción. A modo de resumen,
se mostrará el total de cada uno de estos datos.
Al igual que en el informe anterior, para cada entrada podrá crearse un informe con las diferencias
entre el teórico que se iba a recibir y lo recibido realmente. Dicho informe contendrá también la
cadena para la que se recibió la mercancía, la fecha de inicio y de fin de la operación de entrada en el
almacén y para cada SKU la familia a la que pertenece, la diferencia detectada (ya sea positiva o
negativa) el precio unitario de la prenda y el total de la diferencia.
Por cada expedición que se produzca, podrá generarse un informe en el que se indique la fecha de la
misma, así como una relación de los SKU’s que han salido del almacén, indicando su familia y su
cantidad. También se indicará la cantidad total de prendas expedidas.
También por cada expedición generada, deberá poder generarse un informe con los pedidos expedidos.
En dicho informe se mostrará la fecha en la que los pedidos han abandonado el almacén. Para cada uno
de estos pedidos se mostrará su código, el número de cajas que lo componen, el peso total de las cajas,
el volumen en metros cúbicos, la cantidad de SKU’s que incluye, los códigos de cada una de las cajas y
en el caso de que la caja de pedido vaya reempaquetada, el código del bulto de tienda en el que va.
El modelo mixto añade un elemento más en el tratamiento de los pedidos, la fuente del stock, donde el
pedido no se trata de forma definitiva, y que podrá ser cualquier localización de Inditex con stock que
se pueda poner a la venta o disponible para la plataforma de venta, o cualquier tránsito susceptible de
ser vendido.
Origen de stock: Cualquier localización que disponga de stock y lo transfiera hacia una
localización capaz de realizar la preparación del pedido. O cualquier tránsito entre
localizaciones que se utilice para su venta online.
Localización de empaquetado: localización de inditex donde se prepara el pedido de forma
definitiva para ser enviado al cliente, puede disponer también de stock necesario para el
pedido.
Un centro de distribución de ecommerce, al igual que una tienda, puede desempeñar cualquiera de
estos dos roles o ambos de forma simultánea.
En el modelo mixto existirán diferentes tipos de pedidos en función de cómo sean sus líneas. Los
diferentes tipos de líneas de pedidos que se podrán tratar en un centro de distribución de Ecommerce
serán:
Líneas mixtas: En una línea mixta existen unidades cuyo origen es externo al stock del CD.
Puede contener una combinación de unidades de almacén y de alguno de los siguientes tipos:
o Transferencias de picking: unidades cuyo stock se envía desde un origen de stock a una
diferente localización de empaquetado. El stock a asignar a estas líneas será indicado a
través de los PickingTransferInfo indicando que el stock se debe asignar a la línea o a
través de un PickingTransferAsignation o StockAsignation indicando que el stock existe
en el almacén.
o Stock de CD1: unidades cuyo stock será recibido en un envío de stock desde un CD
primario. Podrá ser el eWMS quien determine qué pedidos son satisfechos de entre los
que tengan líneas de este tipo al realizar una entrada de un envío desde CD de este
tipo. También podrá recibir asignación de unidades (a través de los mensajes
PickingTransferAsignation o StockAsignation) de estas líneas por existir stock en el
centro.
Líneas de tailoring: Son pedidos en los que el stock se fabrica en el momento de la compra y lo
recibe directamente el almacén de empaquetado. Las prendas de estos pedidos nunca llegan a
ser tratadas en las áreas de stock. Se tratan directamente en las zonas de empaquetado. Este
tipo de línea de pedido no se mezclará con otro tipo de líneas.
Líneas de proveedor externo: Son pedidos similares a los que tienen líneas de tailoring, con la
salvedad de que el pedido puede ser parcial y que se debe tratar con órdenes de trabajo de
recepción a PTL.
A partir de los tipos de líneas descritos anteriormente podemos considerar que existen los siguientes
tipos de pedidos en centros con modelo mixto
Pedidos de almacén o de empaquetado: todas sus líneas son líneas de empaquetado, y pueden
ser tratados completamente con el stock existente en el centro, no deben esperar por ninguna
entrada.
Pedidos de tailoring: todas las líneas que componen el pedido son líneas de tailoring.
Pedidos mixtos: tienen alguna línea mixta. Los pedidos serán de este tipo si en su nacimiento
tenían alguna línea de las indicadas, aunque posteriormente por asignaciones de stock puedan
pasar a ser pedidos de empaquetado.
Dentro de los pedidos mixtos, a efectos de su tratamiento nos interesará diferenciar los siguientes:
Monocompleto unitario PT: Pedidos de una sola unidad en una línea de tipo picking transfer
con solo un origen de stock diferente al almacén de empaquetado.
Monocompleto unitario CD1: Pedido de una sola unidad en una línea de tipo línea de stock de
CD1. Su stock debería ser recibido en un envío indicado como monocompleto unitario.
Monocompleto unitario EP: Pedidos de una sola unidad en una línea de tipo picking transfer
con solo un origen de stock diferente al almacén de empaquetado. La línea debe contener el
atributo “externalprovider”.
Monocompleto PT: Pedidos con solo un origen de stock, diferente al almacén de empaquetado,
y compuesto solo por líneas de picking transfer. Todo su stock llega en un PickingTransferInfo o
en PickingTransferInfo relacionados.
Monocompleto CD1: Pedidos con un solo origen de stock, todas sus unidades llegan en un único
envío desde el CD1 indicado como envío monocompleto.
Monocompleto EP: Pedidos con solo un origen de stock, diferente al almacén de empaquetado
y compuesto solo por al menos una línea que contengan el atributo “externalprovider”.
Monoparcial: Pedidos con parte del stock en la localización de empaquetado y otra parte
pendiente pero solo de un tipo.
Los pedidos unitarios cuyo stock sea procedente de transferencias de stock o de stock de otros CDs son
susceptibles de ser tratados directamente en mesa de empaquetado. Para esto el envío que los
contenga debe tener únicamente pedidos del mismo tipo.
Todos los demás envíos deberán ser ubicados en áreas de almacenamiento y posteriormente
evolucionarán a pedidos de almacén para ser tratados a través de los procesos normales de picking,
clasificado, empaquetado y expedición.
En el caso de tratamiento en área de almacenamiento para los pedidos de PT será el eWMS quien
mantenga la asignación recibida en los PickingTransferInfo siempre y cuando ésta siga siendo válida, si
no lo fuese ya, o si se tratase de pedidos de preventa o con origen CD1 será inDom quien realice la
asignación al pedido que considere prioritario.
Los pedidos pueden cambiar de tipo de picking en función de cómo evolucione el stock en las fuentes
de stock durante su ciclo de vida. Las unidades que inicialmente se solicitaron a un origen pueden
solicitarse a otro o asignarse si aparecen en el almacén de empaquetado.
La operativa a seguir en destino con la recepción de la mercancía para los pedidos mixtos dependerá de
los tipos de pedidos que se reciban en una misma recepción, es decir, de cómo sean los pedidos en el
momento en que se reciben en destino, no de cómo se creasen en el momento inicial o de cómo los
tratasen los orígenes de stock.
3. Procesamiento en MSR.
Todos los envíos de picking transfer podrán llevarse a MSR.
El eWMS podrá notificar que para un pedido determinado InDom no le asignen las unidades pendientes
de asignación por PickingTransfer o de Preventa CD1 porque lo hará el propio eWMS durante su
tratamiento, este bloqueo se hará mediante el envío del mensaje OrderAssignationLockInfo con el valor
AssignationLockStatus="ACTIVE".
Cuando esté bloqueada la asignación para un pedido se dejarán de procesar los mensajes de asignación
de stock para él hasta que se desbloquee, en este momento se procesarán los mensajes recibidos
durante el bloqueo para el pedido si se trata de unidades no asignadas aún, o se descartará su
procesamiento si se trata de unidades ya asignadas.
Que esté o no bloqueada la asignación de stock para pedidos en SGA no modifica el comportamiento
que el SGA debe tener para asignar unidades a pedidos. Un SGA configurado como BlockNone podría
continuar haciendo la operativa de pedidos unitarios a mesa de empaquetado y en ese caso enviar las
asignaciones de stock a los pedidos que se van empaquetando (a través del envío del
InventoryAdjustment con la información de la línea del pedido).
Un pedido puede estar bloqueado por N envíos, por lo que las relaciones de bloqueo deben persistirse
para todos ellos, no solo para el primero.
Los pedidos mixtos bloqueados deberán desbloquearse siempre en las siguientes circunstancias:
Alguna de las entradas (envíos o Picking Transfer) en las que estaba informado el pedido se
lleva a stock y no a mesa, PTL o PrePTL.
Se cierra la entrada (envío o Picking Transfer) sin que se asignasen todas sus unidades. Además
de generar la incidencia se desbloqueará la asignación de unidades.
Se cancela una entrada (envío o Picking Transfer) en la que estaba informado el pedido y por la
que se había bloqueado.
Se recibe el mismo envío más reciente, se desbloquearán los pedidos, se procesarán las
asignaciones pendientes y se bloquean nuevamente.
Para ser origen de stock en pedidos mixtos el eWMS podrá recibir peticiones de transferencias de
picking mediante el mensaje PickingTransfer, en él recibirá la petición de unas cantidades para un
conjunto de skus de un pedido de cliente, estas unidades se enviarán hacia la localización de
empaquetado en uno o varios bultos de tienda junto con mercancía de otros pedidos. Los picking
transfer podrán ser de los mismos cuatro tipos que tenemos para los pedidos, estos tipos se podrán
utilizar para agrupar el picking en origen y facilitar la operativa en destino.
El sistema presentará una pantalla en la que se podrá hacer seguimiento de los pedidos de picking
transfer, mostrando la información relevante para cada uno de ellos. Toda esta información se mostrará
en una tabla con una fila para cada pedido en diferentes columnas.
- Cadena
- Estado.
- Plataforma venta.
- Fecha de compra.
- Fecha de alta.
- Fecha expedición.
- País.
- Tipo de picking.
- Incidencia.
El botón de exportar permitirá descargar en formato csv un fichero con toda la información que se
muestra en la tabla.
El eWMS informará del estado de los pedidos de picking transfer mediante el mensaje
OrderStatusUpdate y sus posibles estados serán:
El eWMS permitirá crear preselecciones de pedidos de picking transfer tal y como se crean para los
pedidos clásicos. Los criterios para estas preselecciones serán:
Cadena.
Fecha máxima de expedición.
Fecha de compra.
Prioridad.
Plataforma de venta.
Tipo de envío.
Tipo de servicio cliente.
País.
Localización destino (GCD).
La fecha máxima de expedición se calculará por defecto utilizando un parámetro de configuración por
tipo de servicio genérico y tipo de pedido.
Existirá una pantalla en la que se podrá hacer un seguimiento de las preselecciones creadas en el paso
anterior. En esta pantalla se mostrará la misma información que en la de seguimiento de preselecciones
de pedidos clásicos.
Id preselección.
Cadena.
Nombre preselección.
Fecha creación.
Estado.
Número pedidos Sin iniciar.
Número de pedidos En picking.
Número de pedidos Picados.
Número de pedidos Expedidos.
Esta pantalla tendrá filtros por cadena, estado de preselección, fecha de creación y pedido (filtrará
tanto código pedido almacén como código pedido WCS).
Aparecerán filtradas por defecto las preselecciones activas de los últimos 2 meses.
En el caso de pedidos de picking transfer el procedimiento será distinto al actual de pedidos clásicos,
las oleadas se generarán contra una orden de trabajo que ha de existir previamente.
Existirá una pantalla de órdenes de trabajo de picking transfer desde la que se crearán y se podrán
añadir nuevos pedidos a las órdenes ya creadas mediante la opción de olear.
Al crear la orden de trabajo se le dará una descripción y se fijará únicamente la cadena y cuál es el
destino de la orden, pudiendo seleccionar uno de entre los que haya Picking Transfer pendientes (el
Existirá un parámetro en base de datos distribution.withRFID.locations que incluirá una lista con todas
las localizaciones para las cuales es necesario incluir la información RFID de las prendas enviadas.
“No es posible crear la orden de trabajo. La localización destino << locationID >> necesita una
instalación de CAR.” // “It is not possible to create the work order. The destination <<locationID>>
requires a CAR installation”
“No es posible crear la orden de trabajo. Algunos de los destinos seleccionados requieren información
RFID y otros no.” // “It is not possible to create the work order. Some selected destinations require
RFID information and some of them don’t”
Existirá un botón en la pantalla de seguimiento de órdenes de trabajo llamado Crear Ola, que guiará a
la pantalla de olear contra la orden que esté seleccionada de entre las existentes en el formulario.
Se podrán generar nuevas olas únicamente para una orden de trabajo ya creada, que no esté cerrada.
Para cada opción del filtro se mostrará el número de pedidos que cumplen con dicha opción. Una vez
seleccionados los filtros deseados, el sistema buscará los pedidos que cumplen las condiciones exigidas
y mostrará la cantidad de pedidos y de unidades en los mismos.
El sistema recibirá una notificación por cada prenda que se pique en el módulo de reparto. Dicha
información debe ser actualizada y persistida para cada SKU de manera que desde la pantalla de
órdenes de trabajo de picking transfer se pueda realizar el seguimiento de dicho reparto.
Si durante la lectura RFID en CAR aparecen menos unidades en un bulto que las recibidas en el teórico,
CAR informará al módulo coordinador el cuál enviará a los sistemas externos un ajuste de inventario
negativo sobre el disponible para los SKU’s faltantes.
Si durante la lectura RFID en CAR aparecen más unidades en un bulto que las recibidas en el teórico,
CAR informará al módulo coordinador el cuál enviará a los sistemas externos un ajuste de inventario
positivo sobre el estado aflorado para el SKU que ha aparecido.
En estos casos el módulo coordinador se comportará de forma distinta durante el cierre de la orden de
trabajo de picking transfer con respecto al cierre de los repartos a localización (ver SGAEWMS-RF-601.8
–A.).
Existirá una pantalla desde la que se podrá realizar el seguimiento de las órdenes de trabajo de picking
transfer existentes, cualquiera que sea su estado.
Esta pantalla mostrará información sobre el id de la orden de trabajo, su descripción y cadena, cuál es
el destino de la misma, su estado, su fecha de creación y cierre (si existe), los pedidos incluidos en ella
y las unidades demandadas, ya repartidas, confirmadas RFID y a notificar.
Existirán filtros para orden de trabajo, cadena, destino, fecha de alta y estado de la orden.
La información de estas pestañas será la indicada en la imagen superior (para la de SKUs) y en las
siguientes imágenes ejemplo.
Se podrán consultar los detalles las órdenes de trabajo picking transfer existentes en la parte inferior
de la pantalla de “Órdenes de transferencia de picking”. Para ello, se debe seleccionar una orden de la
lista mostrada en la parte superior de la pantalla.
La información de detalle de seguimiento se muestra dividida en tres pestañas distintas que se detallan
a continuación:
En cualquiera de las cuatro pestañas, las unidades a notificar dependerá de los valores de los
parámetros de configuración distribution.withRFID.locations y distribution.notify.only.RFID.boxes:
- Si el destino no es uno de los incluidos en el primero de ellos (no es RFID), siempre se notifican
las unidades repartidas.
- Si el destino es RFID:
o Cuando el segundo de los parámetros sea false, se notificarán las unidades confirmadas
RFID para los bultos que se hayan pasado por RFID y las unidades repartidas para
aquellos bultos que no hayan sido pasados por RFID.
o Si el parámetro es true, se notificarán sólo las unidades confirmadas RFID de los bultos
que se hayan pasado por RFID.
Mediante el botón “Exportar” se permite extraer a Excel los resultados obtenidos en la búsqueda. Se
exportan los registros que se visualizan por pantalla en ese momento. El botón “Recargar”, por su
parte, refrescará la información mostrada por pantalla.
Desde la misma pantalla de seguimiento de órdenes de trabajo se podrán cerrar aquellas en estado
activo o abierto.
Cuando el operador intente cerrar la orden se le mostrará siempre una pantalla de confirmación como
la descrita en SGAEWMS-RF-601.8.1 –B.
4. Se enviará FIND para la orden de trabajo a las áreas de almacenamiento, reparto y/o CAR que
la estuviesen procesando. En el caso concreto de CAR, dicho FIND se enviará si las
localizaciones destino del PT están incluidas en el parámetro distribution.withRFID.locations.
5. Se cerrará la orden de trabajo.
Hay tres casos a destacar durante el cierre de la orden de trabajo para localizaciones incluidas en la
lista distribution.withRFID.locations:
Si durante la lectura RFID afloran artículos que no estaban en la orden de picking transfer a tienda
inicial. Estas lecturas se enviarán en el mensaje de PickingTransferInfo sin incluir la información
relativa al pedido (PickingOrderId, OrderId and OrderItemId) y con estado aflorado
(SkuStatus=”Emerged”).
3. Aflorado respecto al recibido teórico que forma parte del PickingTransfer y es un faltante en
otro bulto:
Si durante la lectura RFID afloran artículos que están en la orden de picking transfer a tienda inicial
pero en otro bulto están como faltante, se enviarán en el mensaje de PickingTransferInfo incluyendo la
información de asignación al pedido que corresponda y con estado aflorado (SkuStatus=”Emerged”).
Se mostrará una pantalla de confirmación de cierre de orden de trabajo que incluirá los SKUs, las
unidades solicitadas, picadas, repartidas, confirmadas y a notificar, así como la diferencia entre las
primeras y las últimas; además se mostrarán las matrículas de los contenedores que habiendo sido
picados no han sido repartidos o, en el caso de que el destino esté incluido en el parámetro
distribution.withRFID.locations, no han sido confirmados con RFID. Si el destino del picking transfer es
una localización incluida en el parámetro distribution.withRFID.locations se mostrará un texto en rojo
en la pantalla:
“Existen unidades no repartidas/leídas RFID con stock ubicado en el almacén y declararás una
incidencia de inventario insuficiente para todos sus pedidos.
Antes de realizar esta acción, consulta con tu supervisor.
¿Deseas continuar con el cierre y crear las incidencias de inventario insuficiente para todos los
pedidos?
SI, tengo la aprobación de mi supervisor
NO, vamos a incluir las unidades pendientes”
Cuando no haya ninguna unidad no repartida/no confirmada RFID con stock en el almacén, no se
mostrará ningún mensaje y se procederá directamente al cierre de la orden de trabajo.
“No se permite cerrar la orden de trabajo <<ID_OT>> porque hay unidades no repartidas/leídas
RFID con stock ubicado en el almacén. Termina de incluir todos los artículos con stock antes de
cerrar la orden de trabajo.
ACEPTAR”
“Existen unidades no repartidas/leídas RFID con stock ubicado en el almacén y declararás una
incidencia de inventario insuficiente para todos sus pedidos.
Antes de realizar esta acción, consulta con tu supervisor.
¿Deseas continuar con el cierre y crear las incidencias de inventario insuficiente para todos los
pedidos?
SI, tengo la aprobación de mi supervisor
NO, vamos a incluir las unidades pendientes”
A continuación, se detallan una serie de ejemplos para ilustrar mejor el comportamiento que debe
producirse cuando se pulsa en el botón “Cerrar” de esta pantalla de confirmación de cierre de orden de
trabajo de picking transfer (como aclaración, en todos los ejemplos el comportamiento será equivalente
si el destino es RFID o no; tan sólo diferirá en que en el primer caso se comprobarán las unidades no
confirmadas RFID y en el segundo las unidades no repartidas):
- Ejemplo 1:
o Datos:
distribution.missingUnitsWithStock.disableWOClose = false
distribution.missingUnitsWithStock.percentage = 10
OT con un total de 100 unidades demandadas
Destino no RFID (no incluido en distribution.withRFID.locations)
0 unidades no repartidas
o Resultado esperado:
No se muestra ningún mensaje y se procede al cierre de la orden de trabajo,
comunicando las unidades repartidas de cada bulto.
- Ejemplo 2:
o Datos:
distribution.missingUnitsWithStock.disableWOClose = false
distribution.missingUnitsWithStock.percentage = 10
OT con un total de 100 unidades demandadas
Destino RFID (incluido en distribution.withRFID.locations)
10 unidades no confirmadas RFID, de las cuales 0 con stock disponible ubicado
en el almacén
o Resultado esperado:
No se muestra ningún mensaje y se procede al cierre de la orden de trabajo,
comunicando las unidades confirmadas RFID de cada bulto (o las repartidas si el
bulto no tiene información RFID y distribution.notify.only.RFID.boxes es false) y
declarando inventario insuficiente para las restantes.
- Ejemplo 3:
o Datos:
distribution.missingUnitsWithStock.disableWOClose = false
El centro de ecommerce podrá recibir envíos de picking transfer de diferentes orígenes de stock:
1. Centros de distribución.
2. GCDs.
3. Tiendas.
Las operativas serán distintas en función del tipo de origen, ya que los bultos llegan al centro de
diferente modo en función del origen.
Cuando se trate de CDs o GCDs todas las operativas serán posibles en función de la configuración
establecida según lo descrito en SGAEWMS-RF-602-A.
Cuando el origen sean tiendas se tratará de un modo completamente distinto según lo definido en
SGAEWMS-RF-604-A.
El eWMS también podría ser destino de un PickingTransfer, en ese caso recibirá una notificación
mediante el mensaje PickingTransferInfo en el que se especificarán un conjunto de bultos de un mismo
PONumber, que contendrán una cantidad de prendas para un conjunto de pedidos.
Dichos pedidos se notificarán también por parte de los sistemas Ecommerce y en ellos se especificará la
cantidad de prendas que se recibirán de otra fuente de stock.
Puede que un envío se componga de varios PickingTransferInfo. Todos ellos contendrán el mismo Id. de
expedición, provendrán del mismo GCD origen y se indicará el total de ellos en cualquiera de los
mensajes PTInfo recibidos. Si alguno de los PTInfo que componen el envío no se recibe, no podrá
tratarse dicho envío.
La configuración de estos estados definirá si son o no cancelables. Por defecto, este tipo de pedidos se
podrán cancelar mientras esté en estado PTPendiente, PTParcialmenteInformado y PTInformado.
Se notificará el cambio de estado de los pedidos a los sistemas de Ecommerce cuando los pedidos pasen
por los estados PTPendiente, PTParcialmenteInformado, PTInformado, PTRecibido y PTEmpaquetando.
Los pedidos que se completan con stock ajeno al almacén podrán clasificarse en cinco tipos:
1. Monocompletos unitarios: Pedidos que solo tienen una unidad y se completan con stock
externo (implícitamente de un solo origen).
2. Monocompletos: Pedidos que se completan totalmente con una única fuente de stock no
perteneciente al almacén en el que se empaquetan.
3. Multicompletos: Pedidos que se completan totalmente con varias fuentes de stock no
pertenecientes al almacén en el que se empaquetan.
4. Monoparciales: Pedidos que se completan con una única fuente de stock no perteneciente al
almacén en el que se empaquetan y con el propio stock del almacén.
5. Multiparciales: Pedidos que se completan con varias fuentes de stock no pertenecientes al
almacén en el que se empaquetan y con el propio stock del almacén.
Para decidir el tipo de un pedido se tendrá en cuenta tanto los PTInfo o ShippingNotification recibidos
como las posibles asignaciones de líneas recibidas desde los sistemas Ecommerce
(PickingTransferAssignation). El tipo especificado en el SalesOrder se tendrá en cuenta por defecto
mientras no exista dicha asignación.
1. Ubicación en el stock de la mercancía recibida: Cualquier PTInfo puede ser tratado de este
modo.
2. Clasificación en muro: Cualquier PTInfo puede ser tratado de este modo. [En desuso, se deja
de mantener]
3. Llevar directamente la mercancía a mesa de empaquetado: Sólo PTInfo’s que contengan
pedidos monocompletos pueden ser tratados de este modo.
4. Clasificación para PTL: Solo pedidos unitarios, monocompletos y/o monoparciales podrán ser
gestionados de este modo.
En el eWMS se configurará cuáles de estas operativas son posibles en la entrada a través del parámetro
pickingTransferReceptionMode, este parámetro aplicará tanto a entradas de picking Transfer como de
1. Sólo ubicación en stock (STOCK): La mercancía para cualquier tipo de envío debe ubicarse en
el stock del almacén. No se podrán crear órdenes de trabajo para mesa, muro o PrePTL.
2. [En desuso] Clasificación en muro (WALL): La mercancía para cualquier tipo de pedido puede
llevarse a muro para clasificar.
3. [En desuso] Permitidas operativas de clasificación en muro y de llevar a mesa de
empaquetado (PS_WALL):
a. Los monocompletos unitarios se pueden llevar a mesa de empaquetado directamente
b. Todos los tipos de pedido se podrán llevar a muro de clasificación.
4. [En desuso] Operativa restringida (MANDATORY_PS_WALL_STOCK):
a. Los monocompletos unitarios sólo se podrán llevar a mesa de empaquetado.
b. El resto de pedidos monocompletos sólo se podrán clasificar en muro.
c. Los multicompletos, monoparciales y multiparciales sólo se podrán ubicar en el stock
del almacén.
5. [En desuso] Decisión de almacén (FREE_PS_WALL_STOCK): Es la opción menos restrictiva, en la
que el almacén decidirá la operativa a seguir.
a. Los pedidos monocompletos unitarios se podrán tratar con las tres posibles operativas
b. El resto de monocompletos, los multicompletos, monoparciales y multiparciales podrán
ser clasificados en el muro o ubicados en el stock del almacén.
6. Unitarios a mesa, resto a stock (FREE_PS_STOCK): Con esta configuración el sistema permitirá
llevar a estaciones de empaquetado o a stock pero nunca trabajar con PTL.
7. Monocompletos, unitarios y monoparciales para PTL, unitarios también a mesa y el resto a
stock (FREE_PS_PTL_STOCK)
Estas configuraciones deberán ser persistidas, pudiendo ser modificadas bajo criterios que se definirán
en requisitos posteriores.
Se podrá hacer el seguimiento de los pedidos con transferencia de picking desde la misma pantalla de
seguimiento de pedidos clásica. En el detalle de dichos pedidos, aparte de las pestañas clásicas de
auditoría y cajas de pedido (si aplica según el estado), se especificará para cada línea de pedido la
cantidad pendiente de transferencia, así como las unidades que ya han sido notificadas, las que se han
recibido, las repartidas en el muro (sólo si se clasifican en el muro) y las asignadas (se marcarán como
asignadas tanto si se ubican en el stock las prendas transferidas, como si se clasifican en muro o se
llevan a mesa de empaquetado).
El valor “tipo de picking” indicará el tipo del pedido teniendo en cuenta el requisito SGAEWMS-RF-
602.2-A.
Las notificaciones de transferencia de picking serán recibidas por el sistema y se procesarán como
futuras entradas de mercancía en el almacén.
Estas notificaciones se persistirán en el sistema como recepciones de tipo picking transfer y existirá una
pantalla en la que se mostrarán todas ellas. En dicha pantalla, se especificará la Cadena, el código de
expedición asignado en el almacén origen, el id. de expedición asignado en el centro de origen, el id.
de transferencia de picking, el número total de PTInfos generados al cerrar el envío en origen, la
localización o GCD origen, la fecha de salida estimada, la fecha de creación de la recepción en el
sistema, el estado de la recepción y los bultos y unidades teóricos que se recibirán. También se indicará
el id. de orden de trabajo a la que está asociada la recepción de picking si aplica:
Se podrá filtrar por Cadena, código de expedición, id. de expedición en origen, id. de transferencia de
picking, origen (ya sea localización o GCD), estado, fecha de salida de origen y fecha de creación de la
recepción en destino. También podrá filtrarse por los códigos de los bultos que forman cada
transferencia de picking.
Puede que haya varios PT para un mismo id. de expedición en origen y misma localización o GCD origen,
ya que al cerrar una transferencia de picking en origen, si incluye mercancía de varios centros de
distribución, se generará un PT por cada uno de ellos. Estos PT con el mismo id. de expedición en
origen y misma localización o GCD (pero con diferente código de expedición y diferente id. de
transferencia de picking) se mostrarán en registros diferentes en la tabla de la pantalla de seguimiento
de transferencias de picking aunque como se ha comentado anteriormente, se especificará en una
nueva columna el número total de PTInfos que se han generado para una única expedición en origen.
Al seleccionar cualquier recepción de PT, se mostrarán tres pestañas en las que se indicarán los detalles
de la transferencia de picking seleccionada:
En la primera el teórico de unidades por sku en los diferentes estados (teórico, recibido,
preclasificado y ubicado)
En la segunda el teórico de unidades por bulto, así como el estado de los bultos (nuevo o
recibido), el código de envío y el id. de transferencia de picking al que está asociado el bulto, si
el bulto es extra o no. También se incluirán las unidades recibidas y preclasificadas por bulto.
En la tercera se mostrarán las unidades por pedido. En ella, para cada pedido asociado al PT, se
indicará el o los contenedores que contienen unidades de dicho pedido, los SKU’s por
contenedor, las unidades teóricas de dichos SKU’s y las unidades que se han ubicado.
También existirá un botón “Cancelar” que sólo se habilitará cuando se seleccione un PT esté en estado
Nuevo. Al pulsarlo, previa confirmación, el PT pasará a estado Cancelado y se generarán incidencias de
faltante sobre las unidades afectadas en los pedidos asociados al PT.
Los estados en los que puede estar una recepción de transferencia de picking son los siguientes:
Se podrán crear cuatro nuevos tipos (según las tres operativas definidas en SGAEWMS-RF-602.3-A) de
orden de trabajo de entrada desde la pantalla de órdenes de trabajo de entrada que ya existe:
Las órdenes de trabajo de transferencia de picking podrán estar en los siguientes estados:
En la pantalla se mostrarán todas las órdenes de trabajo de entrada de picking transfer existentes tal y
como se muestran los demás tipos de entrada. También se podrán usar todos los filtros incluidos
actualmente, aunque en el filtro de código de envío, deberá tenerse en cuenta el código asociado a las
transferencias de picking.
Si alguno de los pedidos del PO contiene artículos procedentes de proveedor externo, el sistema debe
asegurar que la operativa para la gestión de la OT no implica la ubicación de estos artículos, es decir,
solo podría permitir PTAEmpaquetado o Recepción a PTL.
Si los pedidos incluidos en el PT o el SN son unitarios, completos y/o monoparciales, se podrán usar
órdenes de Recepción a PTL, que permiten clasificar estos pedidos en cuadrantes. Estos cuadrantes irán
a las siguientes fases operativas sin necesidad de haber ubicado y picado las unidades.
Para cada PT pendiente que cumpla los criterios seleccionados, se mostrará la cadena, el código de
envío, el código de envío PT, el tipo origen, el tipo de picking, el GCD, la localización origen, la
localización destino, la salida desde origen, los bultos, las unidades, la fecha alta, el estado, la orden
de trabajo, el id. expedición y elementos. No se mostrarán aquellos PT pendientes para los que no se
haya recibido el total de PTInfo’s generados desde origen para una única expedición.
Sólo se permitirá seleccionar un PT pendiente para crear la orden de trabajo (se describirán los
procesos que se lanzarán en este momento para cada tipo de orden en requisitos posteriores). Al igual
que en la pantalla de seguimiento de transferencias de picking, puede que haya varios registros con el
mismo id. de expedición en origen y misma localización o GCD origen. Si se selecciona uno de estos PT,
se incluirán todos los que tienen el mismo id. de expedición en origen y misma localización o GCD
origen a la orden de trabajo.
Al crear la orden de trabajo, todos los pedidos asociados al PT o SN seleccionado pasarán a estado
StockRecibido.
Al seleccionar una orden de trabajo creada se mostrará el detalle de la misma en cuatro pestañas
diferentes:
Al igual que con el resto de tipo de órdenes de entrada, se podrá pausar y despausar el nuevo tipo de
orden de trabajo PTAStock. Para los tipos Recepción a Empaquetado, PTAMuro y Recepción a PTL no
aplica el pausado/despausado.
Al terminar de procesar estos nuevos tipos de entrada deberá cerrarse la orden de trabajo para
notificar a los sistemas de commerce y administración que la mercancía ya ha sido recibida y tratada en
el almacén. Al pulsar el botón de cierre, previa confirmación de las unidades tratadas y avisando de que
para las que no se han recibido se generarán incidencias, se enviará un mensaje referenciando la
transferencia de picking (o las transferencias de picking si se consolidan varias en la misma orden de
trabajo) asociada a la orden de trabajo y para cada bulto los SKU’s y unidades que se han procesado (ya
sea en empaquetado, en muro o en stock). La orden de trabajo pasará a estado Cerrado y se generarán
incidencias de faltante sobre las unidades no recibidas en los pedidos asociados al PT.
Esta es la operativa más restrictiva desde el punto de vista del tipo de pedidos que se pueden tratar de
esta forma. Sólo los pedidos de tipo monocompletos y unitarios (más unidades que ya no pertenecen a
pedidos o unidades que ya han sido asignadas [sobrante]), si la configuración establecida para el
almacén lo permite, podrán llevarse directamente a mesa de empaquetado sin tener que ser ubicados
en el stock o clasificados en un muro.
En caso de que hubiese algún pedido no unitario, debe permirse crear la orden de trabajo a
empaquetado igualmente. Se descartarán los pedidos no unitarios (sin modificar la comprobación de
unitarios/no unitarios actual), permitiendo crear la orden de trabajo igualmente y oleando los pedidos
que sí sean unitarios.
Durante este paso se verificará el porcentaje de unidades de los pedidos no descartados frente al total
del envío, de manera similar a la verificación realizada en la recepción a PTL. Se comparará ese
porcentaje con el parámetro de configuración PTToPacking.POPercentageForPacking cuyo valor será un
número entre 0 y 100.
“El número de pedidos que se olearían (número de pedidos) y unidades (unidades) son insuficientes
para permitir realizar la entrada en PTL. El número mínimo serían (X) unidades, que son un
(PTToPacking.POPercentageForPacking)% de las teóricas del envío”.
El valor por defecto para este parámetro será 25, es decir, si no se pueden olear pedidos por al menos
un 25% de las unidades del PO, no se permitirá la creación de la orden. Si el valor fuese 0 se permitirá
crear esta entrada siempre que haya al menos un pedido pendiente, si el valor es 100 solo se permitirá
si las unidades teóricas de los pedidos oleables son al menos el 100% de las unidades del envío.
En la fase de creación de la orden de trabajo de tipo Recepción a Empaquetado sólo se mostrarán los
PTInfo’s y SN para los pedidos descritos anteriormente, garantizando de esta forma que cada prenda
que se vaya a tratar en la mesa de empaquetado sea un pedido.
Con la primera notificación de bulto recibido, la orden de trabajo pasará de estado Abierto a estado
Activo.
Se permitirá la creación de órdenes de trabajo de tipo PTAEmpaquetado con PT’s que contengan bultos
ya existentes en el sistema siempre que dichos bultos estén en órdenes de trabajo no activas. En caso
contrario no se permitirá la creación de la orden de trabajo hasta que se cierre o cancele la orden de
trabajo ya existente que contiene dichos bultos repetidos.
Con la creación de la orden de trabajo, adicionalmente se creará una oleada (misma orden de trabajo)
formada por un cuadrante en el que se incluirán todos los pedidos asociados al PT y que se hayan
recibido en el sistema y estén activos. El código de cuadrante tendrá el formato QUPTXXXXXXXX y
guardará la relación con todos los bultos pertenecientes al PT. Se enviará la información de dichos
pedidos y de los bultos asociados al cuadrante al módulo de empaquetado para que puedan ser
tratados.
Se podrá realizar el seguimiento de estas oleadas desde la pantalla clásica de seguimiento de oleadas
mostrando la información habitual (SGAEWMS-RF-115-A).
En este punto los pedidos pasarán a estado PTEmpaquetando, que indica que los pedidos están oleados
pero no tienen unidades asignadas. Este cambio de estado debe ser comunicado a los sistemas externos,
mediante el correspondiente mensaje OrderStatusUpdate. El estado a utilizar en este caso será
“PTPA”.
Cada vez que se asigne por primera vez una prenda a una caja de pedido, el módulo de empaquetado
enviará una notificación al sistema que provocará una variación de stock que deberá ser enviada a los
sistemas de Ecommerce. En dicha variación se indicará la asignación de la prenda al pedido asociado
según la información recibida del módulo de empaquetado y la información existente en el PT. Si no se
trata de la primera asignación de la prenda a una caja, se actuará de la misma forma pero indicando
sólo el PT al que pertenece la prenda (no se especificará asignación a pedido en la variación de stock
notificada). También se incluirá la razón “PT” en dicha variación de stock.
En caso de desasignación de prendas, se recibirá una notificación por parte del sistema de
empaquetado que provocará el envío de una variación de stock hacia los sistemas de Ecommerce. En
dicha variación solamente se indicará a qué PT pertenece la prenda.
Si se recibe una asignación de prenda desde el módulo de empaquetado que no pertenece al teórico del
PT se notificará a los sistemas de Ecommerce una variación de stock indicando el código de PT pero sin
asignación a pedido. A continuación se enviará otra variación de stock con la misma cantidad y signo
opuesto a la anterior indicando el código de PT pero sin asignación a pedido.
Tanto la oleada como el cuadrante transitarán por los estados habituales según avance el estado de los
pedidos incluidos en dicha oleada.
Las órdenes finalizadas deberán ser cerradas posteriormente, y solo en ese momento se enviará el
cierre hacia el sistema de empaquetado y la confirmación del PTInfo a los sistemas de ecommerce y
administrativos.
El sistema sólo podrá recibir incidencias de tipo tara por parte del sistema de empaquetado para este
tipo de pedidos. Dichas incidencias se tratarán de igual forma que se hace para pedidos clásicos.
Si para un pedido en estado PTEmpaquetando con incidencia se recibe una asignación de stock por
parte de los sistemas de Ecommerce, dicho pedido cambiará su estado a Pendiente, transformándose
en un pedido de almacén y pasando a tratarse de forma clásica.
Cuando se expidan o cancelen todos los pedidos pertenecientes a la oleada creada (y por tanto al
cuadrante) se notificará el cierre de dicha oleada al sistema de empaquetado si no se ha enviado ya en
el cierre de la orden de trabajo.
El sobrante de los bultos recibidos de un Picking transfer o de una preventa de pedidos unitarios será
posible ubicarlo en el stock. Para alcanzar dicho propósito es necesario notificar al módulo de
almacenamiento la información de la OT. Al no conocer el teórico de la mercancía ubicada, se
informará con un tipo de OT de Movimiento interno.
Las unidades ubicadas serán notificadas con el mensaje MTOL incluyendo la OT/Ola, el sistema deberá
aumentar las unidades ubicadas de como si se tratase de un recepción sin teórico.
Aunque operativamente debería ser después de empaquetar todos los pedidos (o de que se cancelen),
se podrá cerrar la orden de trabajo de tipo Recepción a Empaquetado en cualquier momento. Se
pedirá confirmación del cierre indicando las unidades que se notificarán y avisando de que para las que
no se han tratado se generarán incidencias sobre los pedidos afectados. En el cierre se confirmará a los
sistemas de Ecommerce y Administración las unidades que se hayan empaquetado hasta ese momento,
se crearán incidencias de tipo PT para el resto de pedidos no empaquetados y se enviará el desbloqueo
de los pedidos en caso de estar previamente bloqueados, procesándose además las asignaciones de
stock si existiesen para los pedidos. Todos aquellos pedidos para los que se hayan generado incidencias
seguirán en estado PTEmpaquetando con incidencia, salvo aquellos cuya asignación de unidades haya
eliminado la incidencia que pasarán a estado Pendiente. El cierre de la orden de trabajo se notificará al
módulo de empaquetado. También se enviará la notificación de cancelación al sistema de empaquetado
para todos aquellos pedidos para los que se haya generado incidencia o se hayan pasado a estado
pendiente por haberse recibido una asignación externa.
Cuando se empaquetan de forma correcta todos los pedidos de una orden de este tipo la orden pasará a
estado finalizado, en cualquier caso, esta transición de estado no generará la confirmación de la
mercancía ni el envío de la finalización de la orden a empaquetado ya que podría ocurrir que el bulto
contuviese alguna unidad que pudiese llegar a ser declarada como extra en el PT.
El cierre de la OT será realizado por el usuario de manera manual desde la gestión de Órdenes de
recepción, el sistema notificará del cierre de las OT al módulo de almacenamiento y al módulo de
empaquetado (si la OT no estaba finalizada en dicho módulo). Se notificará la confirmación de la
entrada de la mercancía a los sistemas externos de las unidades empaquetadas directamente y las
unidades ubicadas en el stock. En el caso de un Picking Transfer, si las unidades fueron ubicadas en el
stock no incluirán la información del pedido asignado.
Tras la creación de la orden de trabajo se informará al PTL del contenido de los bultos incluidos en
todos los PTs de la id_expedicion que se hayan seleccionado durante la creación, así como de la
descripción de la orden de trabajo creada.
En el proceso de clasificación en muro en el PTL el primer paso será la selección del contenedor y el
eWMS recibirá las asignaciones de las prendas de un contenedor a las posiciones de muro y pedido.
Cuando el eWMS reciba la notificación de un nuevo bulto desde el PTL notificará a través del mensaje
PickingTransferPreConfirmation la recepción de ese bulto si estaba dentro de los bultos teóricos de la
orden, si no estaba en los teóricos lo añadiría como bulto extra.
Cuando todos los bultos teóricos fueron recibidos el eWMS notificarán con el mensaje
PickingTransferPreConfirmationEnd. Esta notificación se producirá también al cerrar la orden si este
cierre se hace cuando no se han recibido todos los bultos teóricos.
Durante el proceso de clasificación a Muro el ePAC irá notificando de la asignación de las unidades a
pedidos, o de las unidades extra. Con la recepción de esta mensajería el eWMS generará los
InventoryAdjustment con el código PTNumber que corresponda, también incluirá en este mensaje el
OrderId si la prenda pudo ser clasificada y asignada a un pedido. El ePAC mantendrá la asignación
recibida en los mensajes PickingTransferInfo.
Además, estas unidades pasarán a formar parte del stock del almacén y deberán ser tenidas en cuenta a
todos los efectos.
Este tipo de orden de trabajo se comportará de forma similar a una entrada de CD. Al crear una orden
de trabajo de este tipo, se enviará al módulo de almacenamiento la información de la orden de trabajo
creada así como el teórico de bultos y de unidades de dicha orden.
Para cada bulto recepcionado en el módulo de almacenamiento se recibirá una notificación que
provocará el cambio de estado del bulto notificado de Nuevo a Recibido. Si se notifica un bulto que no
existe en el teórico de la orden de trabajo se creará como bulto extra y su estado será Recibido.
Con la primera notificación de bulto recibido, la orden de trabajo pasará de estado Abierto a estado
Activo.
Después de recibirse los bultos, pasará a ubicarse en el stock el contenido de todos ellos. El módulo de
almacenamiento enviará al sistema una notificación cada vez que se ubique una prenda. Dicha
notificación deberá ser tratada por el sistema actualizando el número de unidades ubicadas para el SKU
en cuestión y notificando este hecho a los sistemas de Ecommerce mediante una variación de stock en
la que se indicará la asignación de la prenda al pedido asociado según la información existente en el PT.
También se incluirá la razón “PT” en dicha variación de stock.
Una vez ubicada toda la mercancía se procederá al cierre de la orden tal y como se indica en SGAEWMS-
RF-602.6-A. Dicho cierre se notificará al módulo de almacenamiento.
El eWMS permitirá que un PT o SN pueda ser llevado a clasificar en PTL si contiene pedidos de tipo
unitarios, monocompletos y/o monoparciales. (Podría contener pedidos de otro tipo, pero estos no se
incluirán en la orden de trabajo).
Lo que se pretende operativamente con este tipo de orden de trabajo es aprovechar que el conjunto de
bultos tienen las unidades de un conjunto de pedidos para evitar la ubicación y el picking en el stock.
De esta forma se pasará directamente al siguiente proceso, al empaquetado para unitarios, a la
clasificación en PTL para completos o al parking de consolidación (junto con el picking del propio
centro) para su posterior clasificación en PTL para parciales.
Además, se impedirá la creación de este tipo de orden de trabajo si los pedidos seleccionados para
olear no suponen un porcentaje determinado de las unidades del envío, de este modo se evita permitir
llevar a clasificar a PTL todas las unidades de un envío cuando solo quedan muy pocos pedidos
pendientes de los que teóricamente incluía el PO. Existirá para esto un parámetro
PTLRecepcion.POPercentageForPTL de tal modo que si las unidades del envío no llegan a ese porcentaje
no se permitirá crear la orden a PTL y se informará al usuario.
Existe una salvedad, cuando el PT incluya pedidos parciales con artículos de proveedor externo
definidos en el requisito “SGAEWMS-RF-606- A - Pedidos desde proveedor externo”, será obligatorio
tratarlos con una orden de trabajo de recepción a PTL. Con esto se pretende evitar que artículos
personalizados para un cliente concreto sean ubicados en el stock.
El eWMS en primer lugar seleccionará el conjunto de pedidos oleable de entre los incluidos en el envío,
se tendrán en cuenta todos los que se encuentran en estados Stock Pendiente, Stock Informado, Stock
Recibido y Pendiente (es decir, se podrán olear aunque parcial o totalmente sus unidades hayan sido
previamente asignadas al stock de almacén siempre que no se encuentran en un estado en picking o
posterior).
Tras la selección de los conjuntos de pedidos oleables de cada uno de los grupos anteriormente
mencionados (Unitarios, monocompletos y monoparciales), se habran podido generar las siguientes OT:
Durante este paso se verificará, por una parte, si se incluyen artículos de proveedor externo, y por otra
el porcentaje de unidades que tienen estos pedidos y qué peso supone frente al total del envío para
compararlas con el parámetro de configuración PTLRecepcion.POPercentageForPTL cuyo valor será un
número entre 0 y 100.
“El número de pedidos que se olearían (número de pedidos) y unidades (unidades) son insuficientes
para permitir realizar la entrada en PTL. El número mínimo serían (X) unidades, que son un
(PTLRecepcion.POPercentageForPTL)% de las teóricas del envío”.
El valor por defecto para este parámetro será 25, es decir, si no se pueden olear pedidos por al menos
un 25% de las unidades del PO, no se permitirá la creación de la orden. Si el valor fuese 0 se permitirá
crear esta entrada siempre que haya al menos un pedido pendiente, si el valor es 100 solo se permitirá
si las unidades teóricas de los pedidos son al menos el 100% de las unidades del envío.
Existe una salvedad, cuando el PT incluya pedidos con artículos de proveedor externo, será obligatorio
tratarlos con una orden de trabajo de recepción a PTL, no teniendo en cuenta, en ningún caso, el
parámetro PTLRecepcion.POPercentageForPTL. Con esto se pretende evitar que artículos personalizados
para un cliente concreto sean ubicados en el stock.
Tras la creación de este nuevo tipo de orden de trabajo se informará tanto a ePAC-PTL como a las áreas
de almacenamiento de la creación de este nuevo tipo de orden a través del mensaje DEOT. Además,
también se enviarán el COOT, BUOT y PEDI a EPAC y, si hay pedidos parciales, el CUEC al área de
almacenamiento. La notificación para ePAC y MSR será como un nuevo tipo Recepción a PTL (AP),
permitiéndose en el MSR, aparte de la ubicación de sobrante del ePAC-PTL, el picking de los cuadrantes
de parciales en el stock del centro.
- Para el cálculo del tamaño de los cuadrantes de unitarios, donde el tipo de cuadrante será PT a
empaquetado, se utilizará el valor del parámetro PTLRecepcion.Unitary.PTLSizeForPOs.
Adicionalmente, se calculará el picking necesario para completar los cuadrantes de monoparciales con
el stock del centro receptor.
Ejemplo:
PTLRecepcion.PTLSizeForPOs = 80.
PTLRecepcion.Unitary.PTLSizeForPOs =120.
La operativa de recepción a PTL incluirá una primera fase de recepción de bultos en las que el ePAC-
PTL notificará a través del mensaje BURE de que un bulto ha sido recibido, en ese momento se
informará de que el bulto ha sido recibido a los sistemas externos a SGA (ShippingPreconfirmation /
PickingTransferPreconfirmation) y su contenido teórico se notificará como variación de stock a estado
recibido. Si con el bulto recibido se completa la recepción de todos los bultos teóricos de la orden se
enviará informará de este hecho (ShippingPreconfirmationEnd / PickingTransferPreconfirmationEnd).
Existirán dos formas de generar el mensaje de fin de recepción de bultos, la automática, es decir
cuando todos los bultos teóricos del envío han sido recibido, o la manual tras la pulsación de un botón
Fin de Recepción que existe en la interfaz de órdenes de trabajo de entrada, siempre que el usuario
confirme que se ha finalizado.
Desde el momento en que un bulto es recibido sus unidades pasan a formar parte de las unidades
recibidas para la orden de trabajo.
Cuando se realiza la preclasificación a cuadrante en el PRE-PTL las unidades escaneadas recibidas desde
ePAC-PTL se moverán del recibido total de la OT al contenedor del cuadrante, que por ser un tipo
especial se sabrá que sus unidades están en estado recibido, y no ubicado como el resto de cuadrantes.
Además, aquellas unidades notificadas desde el ePAC-PTL como clasificadas para el cuadrante que no
formasen parte del teórico del envío deberán ser notificadas a los sistemas externos como variación
positiva en el estado recibido.
Si el número de cuadrantes que se han generado para la OT es solo uno será el propio eWMS quien al
crear la orden las asocie al contenedor del cuadrante, sin esperar a que ePAC-PTL le indique para cuál
de los cuadrantes se ha preclasificado. Esta operación no se realizará en el ePAC-PTL.
Empaquetado de carros de unitarios unitarios. Para este proceso se tendrá en cuenta la misma
gestión de stock descrita en el requisito “SGAEWMS-RF-602.6.1-A – Mercancía de transferencia de
picking a mesa de empaquetado” desde en punto en el que los pedidos pasan a estado
PTEmpaquetando.
Para cuadrantes de monocompletos que irán directamente a muro PTL y monoparciales recibidos
que hayan pasado por consolidación, durante la asignación de las unidades de un cuadrante a un
PTL, será necesario pasar este stock a estado ubicado, desde el teórico del cuadrante (si existe),
desde el teórico de la OT (si la unidad quedaba en el teórico recibido de la OT), o generando
variación positiva sobre el ubicado (si la unidad no formaba parte del teórico preclasificado para el
Al cerrar un PTL de este tipo se generarán incidencias de tipo PT para aquellos pedidos que no se hayan
podido finalizar, todos estos pedidos deberán cancelarse para ePAC y por lo tanto se enviarán además
variaciones negativas del stock clasificado para ellos.
Tras la cancelación en ePAC y la generación de las variaciones negativas, deberá enviarse el desbloqueo
de los pedidos, si en el momento de comprobar si se debe enviar el desbloqueo ya no hubiese ninguna
unidad pendiente de ser asignada al pedido se cerrará la incidencia creada y se pondrá el pedido en
estado Pendiente. Lo mismo se hará si posteriormente se reciben las asignaciones de las unidades
pendientes.
El eWMS permitirá la ubicación de sobrante de Recepción a PTL con la creación de esta misma OT como
tipo movimiento interno para MSR.
El eWMS gestionará las variaciones de stock moviendo las unidades ubicadas desde el contenedor
genérico de la OT si las hubiese, desde los contenedores de los cuadrantes, en caso de no haber en el
genérico de la OT, o con variaciones nuevas si no quedaban unidades recibidas para la OT.
1) Todos sus pedidos están en estado empaquetado o posteriores, empaquetando con incidencia (se
trataría de ua incidencia normal, se ha clasificado correctamente en PTL pero después aparece una
incidencia) o cancelado.
2) Se ha recibido la finalización en PTL de todos los cuadrantes que forman parte de la orden.
En caso de no poder cerrarse la orden por no darse alguna de estas dos circunstancias se informará al
usuario con el siguiente mensaje:
“La orden de recepción a PTL no puede cerrarse porque no se han finalizado los PTL correspondientes a
los cuadrantes:
- QUPTL000NNN
El eWMS permitirá el picking de las unidades necesarias, con el fin de completar pedidos parciales con
el stock del centro, mediante la creación de una única OT de tipo Recepción a PTL (AP) para MSR. Este
tipo de OT permitirá operativas de picking y ubicación, pudiendo seleccionarse en MSR tanto en las
operativas de Picking sin papel definidas en RF_MSR_53.11 – Picking ecommerce a matricula, como en
las de ubicación definidas en el requisito SGAEWMS-RF-602.6.4.8-A – Ubicación de sobrante de
Recepción a PTL,
Tras la finalización del picking, estos carros deberán ser enviados siempre a parking de consolidación
donde completarán las unidades del cuadrante con los carros de monoparciales procedentes de
clasificación PrePTL.
El SGA únicamente asignará unidades a pedidos en el caso de operativas en las que los pedidos se lleven
a empaquetado o PTL. No asignará nunca cuando las unidades se lleven a stock, únicamente se enviará
en la variación que las unidades pertenecen a un PT o SN determinado por su código de envío, pero no
asignará a unidades de pedidos.
Existirá un nuevo tipo de orden de trabajo PT de tienda a Stock (Store PT to Stock) contra la que se
realizará la ubicación de mercancía de todos los picking transfer de una cadena cuyo origen sea una
tienda.
Solo podrá existir una orden activa de este tipo por cadena y el teórico de la misma serán todas las
unidades de los bultos recepcionados de dichos picking transfer con origen tienda que no hayan sido
completamente cerrados en el momento de creación de la orden.
En la creación de una orden de este tipo se le pedirá al operador que introduzca la cadena (en el caso
de ser varias las existentes para el sistema, si fuese solo una aparecerá seleccionada) y una descripción.
Si ya existiese una orden de este tipo activa para la cadena no se permitirá informando al operador el
número de orden y descripción de la ya existente que debe ser cerrada previamente. El mensaje de
error será: “No se puede crear una nueva orden de PT de tienda a Stock para Nombre_Cadena porque
ya existe la orden 1234-Descripción OT en estado activo”
Los pedidos afectados por esta entrada no modificarán su estado en este paso, manteniéndose en
PTInformado o PTParcialmenteInformado
El teórico de la orden sólo se incrementará cada vez que se realice la recepción de un bulto
previamente notificado desde las áreas de almacenamiento (BURE). El sistema enviará la notificación de
un nuevo bulto (BUOT) sin enviar su contenido hacia las áreas de almacenamiento cuando reciba un
nuevo PT desde tienda para la cadena de la orden mientras ésta esté activa en función del valor true o
false del nuevo parámetro IncreaseTheorethicalPTFromStoreToStockWO.
Si el valor es true se enviarán los nuevos bultos a MSR si existe una orden de este tipo para la cadena y
el estado del PT será asignado.
Cada vez que un bulto sea recibido en una orden de este tipo será notificado a los sistemas externos
mediante el mensaje PickingTransferPreconfirmation, si se tratase del último bulto de los pendientes
para ese PT, teniendo en cuenta también lo recibido en órdenes anteriores, se enviará además el
mensaje PickingTransferPreconfirmationEnd.
Cuando se realice la ubicación de prendas en una orden de este tipo el sistema comprobará cómo deben
ser asignadas a los pedidos incluidos en el PickingTransferInfo antes de la notificación de la variación de
stock, para así poder incluir la asignación en este mensaje.
1. Se intentará asignar la unidad a uno de los pedidos incluidos en el teórico del bulto, si recibiese
información del bulto desde el que se ha ubicado la unidad o unidades.
2. Si no se dispone de información de bulto (por ejemplo porque la variación es debida a una
auditoría posición de la OT), se comprobará en el teórico de los bultos recibidos para la orden de
trabajo.
3. En caso de no haber recibido ningún bulto que contuviese la unidad o unidades en el teórico se
comprobará en los PickingTransferInfo que tienen algún bulto recibido.
4. Si no es posible la asignación en los pasos anteriores no se enviará asignación a pedido, pero sí la
variación, y se contemplará que se puede recibir la asignación para un pedido desde el sistema
gestor del stock.
En el cierre de una orden de este tipo se realizarán las siguientes acciones con los PickingTransferInfo
asociados a ella:
32. PickingTransferInfo pasan de asignado a cerrado si todos sus bultos fueron recibidos en ésta o
en ésta y anteriores órdenes de trabajo o ha transcurrido el tiempo de expiración desde que se
recibió la notificación. Se enviará para estos el mensaje con la confirmación de las unidades
realmente ubicadas en el centro.
¿Si de un PT no se recibió nada y transcurrieron los días configurados se enviará también el
PTConfirmation con los bultos pero sin cantidades? [JJCV]
El eWMS podrá recibir pedidos que tengan unidades pendientes de ser asignadas para poder ser tratados
en el almacén porque se hayan vendido sobre stocks en tránsito hacia el almacén.
Estas unidades nunca serán asignadas de forma autónoma por el eWMS si no que se asignarán después
de haber recibido el mensaje PickingTransferAssignation desde los sistemas de comercio electrónico
donde se indicará que se asignará una línea de este tipo.
La marca de preventa se mantendrá para el pedido si tenía alguna línea de este tipo en su nacimiento y
no podrá ser oleado ni se podrá declarar stock out sobre él hasta que tenga todas sus líneas asignadas.
Con la aparición de prendas customizadas procedentes de taller, nace la necesidad de gestionar pedidos
que contengan líneas de este tipo a nivel de SGA. Estos SKUs procedentes de proveedor externo vendrán
identificados desde taller mediante una etiqueta escaneable con el código ExternalproviderItemID
precedido de prefijo “EP” que lo identificará como ExternalProvider ante escaneos de cualquier otro
tipo de código.
Al tratarse de artículos que tiene un único cliente como destino final, carece de sentido que sean
almacenados en stock de almacén. Será necesario que este tipo de artículos se traten mediante ordenes
de trabajo de “Recepción a PTL” definidas en el requisito SGAEWMS-RF-602.6.4-A – Recepción a PTL si
PT en el que se incluyen contienen diferentes tipos de pedidos, o “PT a empaquetado” para PT de
unitarios definido en el requisito SGAEWMS-RF-602.6.1-A. Estas ordenes tienen como fin evitar la
ubicación y el picking en el stock, pasando directamente al siguiente paso operativo.
En caso de que exista al menos una línea dentro de un pedido que no sea de proveedor externo,
estaremos hablando de un nuevo tipo de pedido mixto, estos nuevos tipos serán monocompletoEP y
monoparcialEP definidos en el requisito SGAEWMS-RF-600.3-A – Tipos de pedidos mixtos. Estos nuevos
pedidos mixtos se caracterizarán por tener al menos una de las líneas que componen el pedido con
atributo ExternalProviderItemId.
Los pedidos multicompletos o multiparciales no podrán incluir este tipo de artículos. En caso de que se
recibiera un pedido de esta manera, se persistiría con incidencia declarada de PT en sus líneas de
origen externo.
Se necesita una pantalla para poder visualizar las entradas de consumibles que se realizan en la
aplicación.
33. Filtro: se pueden filtrar las entradas de consumibles por los siguientes criterios:
o Descripción: se introduce la descripción o parte de la descripción que el usuario da
como nombre de la entrada en la pantalla de nuevas entradas de consumible. Se deben
ofrecer los resultados cuya descripción de entrada coincida o contenga la descripción
introducida en este campo de texto. No se debe distinguir entre mayúsculas y
minúsculas.
o Estado: combo donde se puede seleccionar los estados posibles de una entrada de
consumibles: tránsito, recibido.
34. Listado de entradas de consumibles: se muestra una tabla con el listado de entradas que
concuerdan con los criterios de búsqueda introducidos en la sección de filtros. Todas las
columnas deben ser ordenables. Los campos a mostrar de cada entrada son:
o Descripción: descripción de la entrada.
o Fecha de la entrada: día en el que se produjo la entrada de consumibles en el almacén.
No tiene por qué coincidir con la fecha de alta de la entrada en el sistema.
o Estado: estado de la entrada de consumibles. Permanece en estado ‘En tránsito’
mientras no se reciban todas las unidades esperadas de la misma. Cuando se registren
todas las unidades pasa a estado ‘Recibido’.
35. Para poder visualizar el detalle de una entrada, se pincha sobre la fila que se desee consultar y
aparecerán los datos correspondientes en la parte inferior de la pantalla:
o Id SFI
o El tipo de consumible
o El consumible recibido
o El número de unidades de consumible recibido.
o El número de unidades de consumible en tránsito.
o Número de registros totales.
o Número de unidades recibidas totales.
o Número de unidades en tránsito totales.
o Botón ‘Exportar’: permite extraer en un Excel los registros que se visualizan en la tabla.
36. Botonera:
o Exportar: se permite exportar a Excel los resultados obtenidos en la búsqueda. Se
exportan los registros que se visualizan por pantalla en ese momento.
o Eliminar: permite eliminar de la entrada el consumible correspondiente a la fila
seleccionada mediante el checkbox (Requisito: SGAEWMS-RF-702-A – Eliminar entradas
de consumibles).
o Nueva entrada: permite abrir la pantalla de ‘Nueva entrada de consumibles’ si se quiere
añadir una nueva entrada al sistema (Requisito: SGAEWMS-RF-703-A – Añadir entradas
de consumibles).
o Confirmar: abre una ventana modal con los consumibles que se esperan recibir. Se
deben marcar las unidades recibidas realmente en la entrada ya que no tiene por qué
recibirse exactamente lo esperado y además, es posible que una entrada de
consumibles sea recibida en varias entregas diferentes.
Se debe poder añadir entradas de consumibles a través de la aplicación mediante una pantalla
específica para ello. Además, la carga del stock inicial también se debe realizar a través de esta
pantalla asignando una descripción específica para indicar que es la primera carga de stock y poniendo
como fecha el día actual.
Por otra parte, se debe permitir la importación de entradas de consumibles desde un fichero Excel que
ha de cumplir un formato determinado. De esta forma, en lugar de ir introduciendo los consumibles uno
a uno, se hará de forma automática y en bloque. Este fichero será importado bien cuando la mercancía
esté en tránsito o cuando ya se haya recibido. Esto debe ser indicado en el combo desplegable ‘Estado’.
- En la parte inferior de la pantalla se puede ver un listado con los distintos consumibles que se
van dando de alta en la entrada. Todas las columnas deben ser ordenables. Los datos a
visualizar son:
o Id SFI: identificador del consumible en SFI.
o Tipo de consumible: tipo de consumible que entra en el stock.
o Consumible: consumible para el que se da de alta el stock.
o Unidades: especifica el número de unidades indicado por el usuario en el input
‘Cantidad’.
o Botón ‘Eliminar’: permite eliminar el consumible seleccionado mediante el checkbox.
Se debe mostrar un mensaje para que el usuario confirme si quiere realizar o no la
acción:
37. Botonera:
o Crear entrada: si se pulsa en crear entrada se acepta la inserción de consumibles y se
almacenan los cambios en la Base de Datos. Se vuelve a la pantalla del listado de
entradas.
o Cancelar: se sale de la pantalla de ‘Nueva entrada de consumible’ descartando todos
los cambios, es decir, sin guardar los datos introducidos en la Base de Datos. Se pide
confirmación al usuario previamente.
Si se pulsa en el botón Importar en la pantalla de nuevas entradas de consumibles se debe abrir una
ventana modal donde se pueda seleccionar el fichero a importar.
PENDIENTE PENDIENTE_
ID_AJENO DESCRIPCIÓN STOCK_ACTUAL _SERVIR ENTRADA
Tissue Paper 17 g.680 x 750 Zara.com Instant Delivery (1 Unit
734573 = 1 Pack = 500 Sheets) 0 1
Una vez importado el fichero se debe mostrar el listado de consumibles que contiene en la parte
inferior de la pantalla, de la misma forma que cuando se importan de forma manual.
Cuando se añade entradas de consumibles en tránsito, se deben registrar esas unidades en base de
datos en dicho estado. A medida que se van confirmando las recepciones de los consumibles, se deberá
modificar el estado de estas unidades de en tránsito a recibido. Esta acción es la que se debe realizar
desde el botón de ‘Confirmar’ de la pantalla de visualización de entradas de consumibles.
Para ello, se debe seleccionar una entrada de consumibles y pulsar en ‘Confirmar’. Se debe abrir una
ventana modal donde se visualicen:
- Filtros: se pueden obtener las salidas en base a los siguientes criterios de búsqueda:
o Tipo de consumible: se muestran los tipos de consumible configurados en Base de Datos
en ese momento. Permite selección múltiple.
o Consumible: se muestran los consumibles configurados en Base de Datos en ese
momento. Permite selección múltiple.
o Fecha desde: fecha desde la cual se quiere consultar las salidas.
o Fecha hasta: fecha hasta la cual se quiere consultar las salidas.
o Descripción: nombre la salida.
o Id SFI: identificador del consumible en el sistema SFI.
o Tipo de operación: manual o automática.
Botonera:
o Buscar: lanza el evento de la búsqueda de salidas de consumibles en función de los
criterios introducidos.
o Limpiar: resetea el formulario.
- Botonera:
o Mediante el botón ‘Exportar’ se puede extraer en una hoja Excel la información que se
está mostrando en la tabla en ese momento tanto en la sección ‘Salidas de consumibles’
como en la sección ‘Consumibles’. Si se extrae la información de ‘Consumibles’ se debe
añadir a la Excel la información del pedido y la salida que se muestra en la primera
tabla.
o Nueva salida: abre la pantalla de salidas manuales de consumibles (Requisito:
SGAEWMS-RF-703.2-A – Gestionar salidas manuales de consumibles).
Si se devuelven varias filas se deben restar todos los materiales definidos en cada una de ellas.
Se deben definir una serie de eventos que soliciten la salida de consumibles de forma automática:
50. Empaquetado: se enviará un evento para la salida de consumibles que estén configurados en la
tabla de configuración de consumo por operaciones con las características:
o Tipo de caja: obtener los registros cuyo tipo de caja coincida con el tipo de caja
empleado en la configuración.
52. Consumibles porcentuales: se programará un monitor para que, cada n horas se ejecute y
realice la resta de stock de los consumibles porcentuales. N será un parámetro configurable.
Esta tarea chequea la configuración de consumibles fijos de forma que se hará el cálculo de los
consumibles a restar del stock en función del consumo realizado en los consumibles que se han
tomado como referencia. Este cálculo se realizará tomando como datos los pedidos
empaquetados y expedidos en las últimas n horas (desde la última ejecución de la tarea).
También se deben crear los eventos que regulen la devolución del stock a disponible:
53. Cancelación de pedido: se debe enviar un evento que solicite la devolución de consumibles alº
stock. Solo se devuelve al stock aquellos consumibles que tengan en la configuración el campo
Recuperable = 1.
54. Reempaquetado: se debe enviar un evento que solicite la devolución de consumibles al stock.
Solo se devuelve al stock aquellos consumibles que tengan en la configuración el campo
Recuperable = 1.
Se debe dar la posibilidad de dar de baja unidades de stock de consumibles de forma manual. Para ello
se debe acceder a la pantalla de salida manual de stock y eliminar las unidades que se deseen desde
ahí. En base de datos se debe almacenar al menos:
60. Formulario de inserción de salidas de consumible: los datos a especificar son los siguientes:
o Descripción: nombre que se le da a la salida.
o Fecha de salida: fecha en la cual se quiere registrar la salida.
o Tipo de consumible: se precarga con el listado de tipos de consumible disponibles en la
aplicación. No se permite selección múltiple.
o Consumible: se precarga con el listado de consumibles disponibles en la aplicación. No
se permite selección múltiple.
o Cantidad: número de unidades que se quieren sacar del stock. Si el número de unidades
especificado es superior al stock disponible en el momento que se pulse el botón
‘Añadir’ se debe dar un aviso al usuario para que lo corrija.
o Stock actual: este campo es informativo. Indica el stock disponible del consumible
seleccionado en tipo de consumible-consumible. Se debe actualizar el dato cada vez
que se cambie la selección del consumible.
Botonera:
o Añadir: cuando se pulsa en el botón ‘Añadir’ se realiza la inserción del consumible
seleccionado en la tabla. Si el consumible ya fue añadido previamente no se añade una
fila más sino que se suma la cantidad introducida a las unidades ya especificadas
anteriormente.
o Limpiar: mediante el botón ‘Limpiar’ se resetea el formulario.
62. Botonera
o Botón ‘Eliminar’: cuando se pulsa en este botón se debe pedir confirmación al usuario
para realizar la operación:
o Botón ‘Crear salida’: al pulsar este botón se registra la salida de consumibles en Base de
Datos. Será un tipo de salida manual. Se vuelve al listado de salidas de consumibles.
o Botón ‘Cancelar’: si se pulsa el botón cancelar se debe mostrar una alerta al usuario
indicándole que va a perder los cambios realizados:
¿Qué pasa si sacan más unidades de las existentes en stock? ¿Se permite?
Para poder consultar la configuración definida para los consumos por operaciones se debe implementar
una pantalla donde se puedan ver las distintas configuraciones dadas de alta en la aplicación.
63. Filtro: se pueden filtrar las configuraciones de consumo por operaciones por los siguientes
criterios:
o Descripción: se introduce la descripción o parte de la descripción que el usuario da
como nombre de la configuración. Se deben ofrecer los resultados cuya descripción de
entrada coincida o contenga la descripción introducida en este campo de texto. No se
debe distinguir entre mayúsculas y minúsculas.
o País: se precarga con el listado de países configurados en la Base de Datos. Si no se
elige ninguno, no se filtra por país.
o Tipo de producto: se precarga con los tipos de productos configurados. Si no se elige
ninguno, no se filtra por país.
o Tipo de consumible: se precarga con la lista de tipos de consumibles disponibles en la
configuración de base de datos. Permite selección múltiple.
o Consumible: se precarga con la lista de consumibles disponibles en la configuración de
base de datos. Permite selección múltiple.
o Evento: seleccionar el evento en el cual se debe aplicar la configuración. Inicialmente
se distingue entre empaquetado y expedición.
o Recuperable: campo que indica si el consumible es recuperable para el stock en el caso
de que el pedido finalmente no salga. Cuando se cancela un pedido que ya ha sido
empaquetado, los consumibles que tengan el check de recuperable marcado se suman
de nuevo al stock. Los que no tengan el recuperable activo se supone que son
consumibles que se deben tirar si el pedido no sale, por ejemplo, la factura imprimida.
64. Listado de configuraciones: se muestra una tabla con el listado de configuraciones que
concuerdan con los criterios de búsqueda introducidos en la sección de filtros. Todas las
columnas deben ser ordenables. Los campos a mostrar de cada entrada son:
o Check de selección
o Descripción: descripción de la configuración.
o Paperless: indica si la configuración es para pedidos paperless o no.
o País: indica si la configuración aplica para un país en concreto o para todos.
o Evento: indica el evento en el cual se aplica la configuración.
o Tipo producto: indica para qué tipo de producto aplica la configuración.
o En el pie de la tabla se deben mostrar el número de registros totales de la tabla.
o Se puede ver el detalle de una configuración de consumo si se pincha en la fila que se
desea consultar. Se despliega el detalle en la parte inferior de la pantalla.
65. Botonera:
o Exportar: se permite exportar a Excel los resultados obtenidos en la búsqueda. Se
exportan los registros que se visualizan por pantalla en ese momento.
o Eliminar: permite eliminar la configuración seleccionada (Requisito: SGAEWMS-RF-
703.3-A – Eliminar configuración de consumos por operaciones).
o Editar: permite modificar la configuración seleccionada (Requisito: SGAEWMS-RF-703.2-
A – Editar configuración de consumos por operaciones).
o Nueva configuración: permite abrir la pantalla de ‘Nueva configuración de consumo por
operaciones’ si se quiere añadir una nueva configuración al sistema (Requisito:
SGAEWMS-RF-703.1-A – Nueva configuración de consumos por operaciones).
Indicar que los tipos de consumibles pueden estar relacionados de alguna manera con los tipos de caja.
Para deducir del stock de consumibles aquellos que se van utilizando se debe disponer de una
configuración que permita determinar qué consumibles se han empleado para un pedido de
determinadas características, es decir, qué caja se ha utilizado, si se ha empleado un papel para
proteger el producto, el papel de la factura, qué etiquetas se han pegado en la caja, etc.
Para realizar esta configuración se debe implementar una pantalla donde se asocie las características
de la operación con los consumibles utilizados en el mismo, de forma que cuando se cierre el
empaquetado de un pedido o se realice la expedición del mismo, el stock disminuya en función de la
configuración realizada.
Se pueden definir distintos consumos para las operaciones de preparación de pedidos, de expedición o
de envíos de mercancía a las tiendas.
- En la parte inferior de la pantalla se puede ver un listado con los distintos consumibles que se
van dando de alta en la entrada. Todas las columnas deben ser ordenables. Los datos a
visualizar son:
o Tipo de consumible: tipo de consumible que se consume en un pedido.
o Consumible: consumible configurado para un tipo de operación.
o Unidades: especifica el número de unidades indicado por el usuario en el input
‘Cantidad’.
o Recuperable: indica si el consumible es recuperable o no si el pedido finalmente no se
envía. Este dato se obtiene de la configuración de tipos de consumibles.
66. Botonera:
o Aceptar: si se pulsa en aceptar realiza la inserción de la configuración de consumo por
operación en la Base de Datos. Se vuelve a la pantalla del listado de configuraciones.
o Cancelar: se sale de la pantalla de ‘Nueva configuración de consumo por operaciones’
descartando todos los cambios, es decir, sin guardar los datos introducidos en la Base
de Datos. Se vuelve a la pantalla del listado de configuraciones.
Para poder consultar la configuración definida para los consumos porcentuales se debe implementar una
pantalla donde se puedan ver las distintas configuraciones dadas de alta en la aplicación.
69. Filtro: se pueden filtrar las configuraciones de consumo por operaciones por los siguientes
criterios:
o Descripción: se introduce la descripción o parte de la descripción que el usuario da
como nombre de la configuración. Se deben ofrecer los resultados cuya descripción de
entrada coincida o contenga la descripción introducida en este campo de texto. No se
debe distinguir entre mayúsculas y minúsculas.
o Sección consumible referencia: consumibles que se toman como referencia para restar
el stock de otros consumibles.
Cantidad: cantidad de consumibles que se deben gastar del consumible
seleccionado para que se resten unidades de stock del consumible fijo.
Tipo de consumible: se precarga con la lista de tipos de consumibles disponibles
en la configuración de base de datos. Permite selección múltiple.
Consumible: se precarga con la lista de consumibles disponibles en la
configuración de base de datos. Permite selección múltiple.
o Sección consumible fijo: consumibles que se deben restar del stock en cuanto se gasten
n consumibles tomados como referencia.
Cantidad: cantidad de consumibles fijos que se consumen tomando como
referencia el consumo del consumible de referencia.
Tipo de consumible: se precarga con la lista de tipos de consumibles disponibles
en la configuración de base de datos. Permite selección múltiple.
Consumible: se precarga con la lista de consumibles disponibles en la
configuración de base de datos. Permite selección múltiple.
71. Botonera:
o Exportar: se permite exportar a Excel los resultados obtenidos en la búsqueda. Se
exportan los registros que se visualizan por pantalla en ese momento.
o Eliminar: permite eliminar la configuración seleccionada (Requisito: SGAEWMS-RF-
704.3-A – Eliminar configuración de consumos fijos).
o Editar: permite modificar la configuración seleccionada (Requisito: SGAEWMS-RF-704.2-
A – Editar configuración de consumos fijos).
o Nueva configuración: permite abrir la pantalla de ‘Nueva configuración de consumos
fijos’ si se quiere añadir una nueva configuración al sistema (Requisito: SGAEWMS-RF-
704.1-A – Nueva configuración de consumos fijos).
Se necesita una pantalla donde se pueda realizar la configuración de qué tipo de consumible –
consumible – cantidad determina la cantidad a restar del stock de otro consumible.
o Botonera:
Limpiar: resetea el formulario de configuración.
Añadir: añade una nueva fila a la lista de consumibles que pertenecen a la
configuración de la operación.
- En la parte inferior de la pantalla se puede ver la configuración establecida. Todas las columnas
deben ser ordenables. Los datos a visualizar son:
o Cantidad referencia: número de consumibles que se deben gastar del consumible de
referencia para que se resten unidades de stock del consumible fijo.
72. Botonera:
o Aceptar: si se pulsa en aceptar realiza la inserción de la configuración de consumibles
fijos en la Base de Datos. Se vuelve a la pantalla del listado de configuraciones.
o Cancelar: se sale de la pantalla de ‘Nueva configuración de consumibles fijos’
descartando todos los cambios, es decir, sin guardar los datos introducidos en la Base
de Datos. Se vuelve a la pantalla del listado de configuraciones.
En la pantalla de informe de stock se podrá ver cuántas unidades de cada consumible están disponibles
para utilizar en los pedidos. Los datos que se visualizan son los disponibles en el momento de la
consulta.
75. Filtro: se permite filtrar las filas de stock por los siguientes criterios:
o Tipo de consumible: se precarga el combo con los tipos de consumible configurados en
la aplicación. Permite selección múltiple.
o Consumible: se precarga el combo con los consumibles dados de alta en la aplicación.
Permite selección múltiple.
o Stock: permite filtrar por una cantidad de stock igual (‘=’), menor (‘<’) o mayor (‘>’)
que la introducida por el usuario en el campo de texto. Se debe seleccionar el operador
en el combo.
o Stock tránsito: permite filtrar por una cantidad de stock en tránsito igual (‘=’), menor
(‘<’) o mayor (‘>’) que la introducida por el usuario en el campo de texto. Se debe
seleccionar el operador en el combo.
76. Stock de consumibles: se visualizan las filas de stock de consumibles disponibles para utilizar en
la preparación de los pedidos. Todas las columnas deben ser ordenables. Se visualizan los datos:
o Tipo de consumible: se muestra el dato internacionalizado (si se dispone de
traducción).
o Consumible.
o Stock.
o Stock tránsito: número de unidades de consumible que se prevé recibir.
o %utilización: porcentaje del consumible que se utiliza con respecto al resto de
consumibles del mismo tipo de consumible.
o Rotación: es el número de días para el cual se prevé que el stock actual es suficiente
para abastecer las necesidades de los pedidos del almacén. Se calcula tomando como
media el stock consumido durante los últimos n días, siendo n un parámetro
configurable. Para el cálculo se deben tomar días completos, es decir, el día actual no
se debe tener en cuenta.
En el pie de la tabla se puede ver el recuento de registros que se están visualizando, así
como el número de unidades totales en stock (teniendo en cuenta los criterios de búsqueda
seleccionados, si aplica). También se añade una leyenda para indicar el número de días que se
han tenido en cuenta para el cálculo de la rotación. Se tendrá que recoger este dato del
parámetro de configuración correspondiente.
En el informe de consumo de stock se puede comprobar el número de unidades consumidas por tipo de
consumible, consumible y por tipo de operación.
77. Filtro:
se pueden obtener las filas del consumo de stock filtrando por los siguientes criterios:
o Fecha desde: fecha desde la cual se ha realizado el consumo.
o Fecha hasta: fecha hasta la cual se ha realizado el consumo.
o Tipo de consumible: se precarga con los tipos de consumibles disponibles en la
aplicación en ese momento. Permite selección múltiple.
o Consumible: se precarga con los consumibles disponibles en la aplicación en ese
momento. Permite selección múltiple.
o Cantidad: permite filtrar por una cantidad de consumo igual (‘=’), menor (‘<’) o mayor
(‘>’) que las unidades introducidas por el usuario en el campo de texto.
o Tipo de operación: se puede elegir entre el tipo de operación automática o manual. Si
no se selecciona ninguna se entiende que se quiere obtener resultados para ambas.
78. Consumo de stock de consumibles: se muestra el detalle de consumo del stock para cada tipo
de consumible-consumible-tipo de operación. Todas las columnas deben ser ordenables. Se
muestran los datos:
Además, en el pie de la tabla se pueden ver el número total de registros que se están
mostrando y el número total de unidades consumidas (teniendo en cuenta los criterios de
búsqueda, si aplica).
El botón ‘Exportar’ permite extraer los datos que se están visualizando en la tabla a una Excel.
Se debe crear un sistema de alertas de forma que cuando haya unidades de stock por debajo de ciertos
umbrales se envíe un email a las cuentas de correo configuradas para advertir de este hecho.
Los umbrales de unidades de consumibles deben poder modificarse por configuración de Base de Datos
en función del consumible o del tipo de consumible.
Se deben guardar los históricos de stock en los últimos n meses. Para ello se deberá configurar una
tarea que se ejecute el último día de cada mes de forma que se guarde la foto del stock en ese
momento por tipo de consumible y mes. Además, se deben eliminar los registros anteriores a la
(fecha actual – n meses), según la configuración establecida.
Este registro de históricos se debe poder visualizar por pantalla de una forma similar a la siguiente:
79. Filtro: se pueden obtener las filas del histórico de stock filtrando por los siguientes criterios:
o Tipo de consumible: se precarga con los tipos de consumibles disponibles en la
aplicación en ese momento. Permite selección múltiple.
o Consumible: se precarga con los consumibles disponibles en la aplicación en ese
momento. Permite selección múltiple.
o Cantidad: permite filtrar por una cantidad de consumo igual (‘=’), menor (‘<’) o mayor
(‘>’) que las unidades introducidas por el usuario en el campo de texto.
o Mes desde: se puede seleccionar un mes desde el cual se quieren obtener los
resultados.
o Mes hasta: se puede seleccionar un mes hasta el cual se quieren obtener los resultados.
80. Histórico: se muestra el detalle del histórico del stock para cada tipo de consumible-
consumible. Todas las columnas deben ser ordenables. Se muestran los datos:
o Mes
o Tipo de consumible.
o Consumible.
o Stock.
Además, en el pie de la tabla se pueden ver el número total de registros que se están
mostrando y el número total de unidades de stock a final de mes (teniendo en cuenta los
criterios de búsqueda, si aplica).
El botón ‘Exportar’ permite extraer los datos que se están visualizando en la tabla a una Excel.
Se debe enviar un mensaje cada día con el resumen del número de pedidos y del número de unidades
expedido. La hora a la que se envíe deberá ser programada.
81. Un identificador
82. El código de almacén de expedición
83. El almacén
84. El número de pedidos totales enviados
85. El número de unidades enviadas en esos pedidos
86. La fecha de expedición
La automatización de los almacenes ecommerce se realizará integrando el módulo RBS que clasificará
los pedidos ecommerce como si fuesen series. Se quiere poder crear órdenes de reparto ecommerce,
que agrupará los pedidos en cuadrante para ser clasificados en RBS. El tamaño de los cuadrantes será
bastante más grande que en un reparto manual, lo que favorecerá el picking, al dividirlo entre varios
pickers que se encargan de recoger artículos en un sector localizado sin tener que desplazarse por todo
el almacén.
Debido a la naturaleza del sistema de clasificación orientado a una gestión por OT/Ola, este tipo de
orden de trabajo realizará tendrá la conversión cuadrante-ola a nivel de orden de trabajo. De tal forma
que la orden de trabajo estará formada por varias olas y cada ola tendrá asociado 1 cuadrante. La
gestión con MSR y EPAC se realizará notificando el cuadrante, además de la orden de trabajo y la ola
(que ya no será con valor fijo 1).
La agrupación de pedidos en preselecciones por criterios de transporte sigue siendo el mismo, siendo
común para los repartos de pedidos ecommerce.
El tipo de orden de trabajo solo podrá estar disponible en aquellos almacenes que dispongan de módulo
RBS. El picking es una tarea manual, se realiza por cuadrante en el área de almacenamiento.
Cuadrantes unitarios y monopedido no necesitan clasificar, por lo que no es necesario notificar al
módulo RBS y como destino será la subinstalación de EPAC.
La información de pedido incluirá la ruta de expedición Ecommerce para que el clasificador pueda
hacer una evacuación agrupada por rutas.
El automatista utilizará la misma interfaz y filtros para crear la oleada automatizada que la manual. El
uso de los filtros será común a ambas oleadas. Cuando el usuario seleccione Crear oleada, aparecerá la
ventana modal igual que ahora; la opción de Automatizada será un tipo de cuadrante más que el usuario
puede seleccionar. Si selecciona cuadrante Automatizado, aparece el valor de Unidades por cuadrante.
En este tipo de orden de trabajo el límite el usuario podrá partir los cuadrantes por cantidad de pedidos
o de unidades; el automatista deberá introducir al menos 1 de los 2 valores. Si no se introduce ningún
valor, la validación lanzará un mensaje de error indicando que debe introducirlos. En caso de que se
introduzcan los 2 valores, el sistema creará cuadrantes cuando alguna de las 2 validaciones se cumplan.
Además se mostrará 2 valores que corresponden a sendos parámetros de configuración:
o Max uds por cuadrante Es la cantidad máxima de unidades que son incluidas en un cuadrante.
La limitación es por el stock que cabe físicamente en el Dynamic Buffer de RBS, ya que crear
cuadrantes de más unidades podría provocar que no se puedana generar series y bloquear el
DRM. El sistema debe incluir los pedidos más prioritarios sin que la suma total de las unidades
sobrepase este valor. En ningún caso se podrá crear cuadrantes con más unidades que las de
este parámetro y si fuese así se lanzaría excepción y se informaría al usuario.
o Max uds por pedido es la cantidad máxima de unidades que puede tener un pedido para ser
clasificado en RBS, por lo que se descartan pedidos con unidades superiores al valor. La
limitación viene dada por la longitud de la barra del contenedor en la evacuación y evitar de
este modo que un pedido se tenga en partir en más de un contenedor. En ningún caso se podrá
crear cuadrantes con pedidos con más unidades que las de este parámetro y si fuese así se
lanzaría excepción y se informaría al usuario.
Se notifica al clasificación con la información de la orden de trabajo y los pedido incluidos. Además se
intentará aprovechar el stock libre del clasificador y realizar un menor número de tareas de picking,
según el RF SGAEWMS-RF-902-A (ver siguiente RF).
Una vez calculado el stock total a solicitar, se notifica al área de almacenamiento la orden de trabajo y
la cantidad de unidades a realizar el picking por cada ola-cuadrante. El destino del contenedor en este
caso será la instalación de RBS, sin especificar en cual de los 2 DRM se clasificará.
Se envía la orden de trabajo al sistema de empaquetado, con la relación ola-cuadrante de cada pedido.
El sistema comprobará si el módulo de clasificación tiene stock libre con los SKUs de la demanda de la
oleada. Calculará la cantidad máxima a reservar teniendo en cuenta la demanda y el stock libre y
enviará la solicitud de reserva al clasificador enviando el mensaje PDAR; de tal forma que si la demanda
El sistema quedará esperando por la respuesta del clasificador, antes de enviar la información del
picking al área de almacenamiento. El clasificador notificará la reserva del stock libre con el mensaje
FSAS. Si el clasificador confirma la reserva de unidades, se deberá:
Si no pudiese reservar ninguna unidad, enviará igualmente el mensaje pro con el contenido vacío (SKU y
unidades a 0). En el momento que se envíe la solicitud de reservar, empezará a funcionar un
temporizador de cuenta atrás, de tal forma que si el clasificador no contesta en el tiempo configurado,
el sistema asumirá que no se ha podido reservar unidades.
El picking en el área de almacenamiento se realiza a cuadrante sin papel, por lo que se los mensaje de
picking de unidades (PICK) y reparto (REEC) van identificados con:
orden de trabajo
ola
cuadrante
matrícula
En el proceso del mensaje PICK, el sistema calcula si existe demanda pendiente de picking. Todas las
unidades picadas que satisfacen la demanda automáticamente son reservadas para la OT/Ola. Si se
produce un picking y ya no hubiese demanda pendiente (porque ha ocurrido una cancelación), las
unidades se suman al contenido del contenedor, pero no estarán reservadas para la OT/Ola.
El cliente puede cancelar un pedido que ya ha sido oleado en un reparto automatizado, al igual que en
un reparto manual. Las condiciones son las mismas para ambos tipos de OT, por lo que usará la
configuración actual según el estado del pedido. Si las condiciones no se cumplen, se dejará una traza
de ERROR y se contestará indicando un resultado negativo.
Si el pedido no ha sido oleado, se cancela igual que en un reparto manual y no es necesario informar a
los módulos.
Si el pedido todavía no ha sido clasificado, se enviará la cancelación de pedido a RBS con el mensaje
CPED y se actualiza el estado a CANCELADO.
Durante el proceso de inducción de un contenedor en RBS, el sistema no recibirá ningún mensaje hasta
que el operario termine. El módulo enviará el o los mensajes indicando las diferencias y el fin del
proceso. El siguiente diagrama de secuencia muestra el orden de intercambio de acciones y mensajes
que ocurren en la inducción:
El clasificador enviará el resultado de la inducción con el mensaje UNIN que constará de las unidades
reales del contenedor y la OT/Ola a las que asignó las mismas. El módulo utilizará las unidades para
satisfacer las reservas que le ha indicado el sistema cuando se confirmo el reparto en MSR. Si el
contenedor contiene unidades sin reservas, bien por una cancelación previa o porque las unidades
reales son más que las teóricas, podrá utilizarlas para resolver déficit o serán inducidas como stock
libre, en este caso el campo OT/Ola estará vacío.
Si el mensaje UNIN incluye matrícula, se indica cual es el contenedor origen del que se están
traspasando las unidades al Dynamic buffer. Si las unidades reales son más que las teóricas, es que hay
unidades que están aflorando, generando el ajuste de stock positivo de la OT/Ola.
Al procesar el mensaje UNIN, el sistema aumentará las unidades inducidas de la OT/Ola y la bolsa de
reparto en clasificador. La bolsa de reparto será la que se utilice para conocer el stock reservado para
la OT/Ola en el clasificador y enviará como stock en las sincronizaciones diarias.
El clasificador confirmará que ha terminado con la inducción del contenedor enviando un REMC
posterior al UNIN. Si las unidades inducidas son las mismas que las teóricas, en el momento de procesar
el REMC debería estar vacío y por lo tanto no existir. En caso de que las unidades reales inducidas sean
menos que las teóricas el contenedor tendrá contenido, por lo que se generará ajustes negativos de
stock.
Al procesar el mensaje UNIN, se comprobará si las unidades inducidas de la OT/Ola son las mismas que
tenía las reservadas. Si son menos se ha producido un déficit en la inducción, en ese caso aumentarán
las unidades en déficit de la línea de distribución de la OT/Ola.
EJEMPLO: Se tiene el contenedor C1 que se informa a RBS con IACR de 5 unidades del sku A, reservado
completamente para la OT/Ola (SASS de 5 unidades). El mensaje UNIN notifica 4 unidades del sku A
para la OT/Ola. Como las unidades inducidas son menos que las reservas, aumentará el déficit de la
línea de distribución para el SKU A en 1 unidad.
Si se inducen más unidades que las reservadas del contenedor, el clasificador intentará utilizar esas
unidades para resolver déficit de inducciones previas, tanto de contenedores de la misma OT/Ola como
de contenedores de otra OT/Ola. Al procesar el UNIN se debe comprobar si hay más unidades inducidas
que reservas del contenedor; si es el caso se decrementará el déficit de la línea de distribución de la
OT/Ola.
NOTA: El sistema permitirá almacenar valores negativos de déficit, por si en el futuro se permite
inducción libre sin teórico en el clasificador que compensen una déficit posterior de contenedor con
téorico.
EJEMPLO: Se tiene el contenedor C1 que se informa a RBS con IACR de 5 unidades del sku A, reservado
completamente para la OT/Ola (SASS de 5 unidades). El contenido teórico son 6 unidades y se inducen
todas. El mensaje UNIN notifica 6 unidades del sku A para la OT/Ola. Como las unidades inducidas son
más que las reservas, disminuirá el déficit de la línea de distribución para el SKU A en 1 unidad. Su la
línea tuviese déficit 0, se quedaría con el valor -1.
Si la OT/Ola está vacía, significa que se ha inducido como stock libre, en ese caso aumenta las unidades
como stock de instalación. También descuenta las unidades del contenedor de inducción.
Si se inducen menos unidades que las reservadas del contenedor, el clasificador intentará resolver ese
déficit con unidades del stock libre. Si fuese posible, enviará un mensaje NORA con la información de
OT/Ola, SKU y unidades. Esto provoca que el déficit de la línea se decrementa en las unidades
La notificación de inducción de unidades de rechazo se realiza también con el mensaje UNIN, sin
contenedor origen al no conocerse. El mensaje incluye SKU, cantidad y la OT/Ola para la que se ha
reservado el ítem. Esto aumenta las unidades inducidas de la línea de distribución y las unidades en la
bolsa de reparto de la OT/Ola. Disminuye el déficit permitiendo valores negativos para equilibrar.
La pérdida de una unidad del clasificador que estaba reservada para una OT/Ola es notificada con el
mensaje NREI que incluye la OT/Ola, SKU y cantidad. Esto significa que las unidades totales que tenía la
instalación disminuyen en la cantidad indicada. Al ser unidades de una OT/Ola el sistema decrementa
las unidades de la bolsa de reparto y además debe aumentar al déficit, ya que hay reservadas que
estaban cubiertas y ahora ya no lo están.
El clasificador informa de los pedidos clasificados y evacuados en un contenedor identificado con una
matrícula con el mensaje COPE. El tipo de contenedor será una especie de trolley en el que operario va
descargando pedido a pedido de la forma en que le vienen ordenados por la instalación. Cuando el
contenedor está lleno (o no hubiese más pedidos para evacuar en la línea) el operario lo cerrará y en
ese momento la instalación notificará la acción. Para favorecer el flujo de pedidos hacia el
empaquetado se permitirá evacuar en el mismo contenedor pedidos de diferentes órdenes de trabajo;
el módulo notificará correctamente el pedido con la OT/Ola correspondiente.
Se debe comprobar que las unidades informadas por cada pedido son las correctas, ya que es posible
que por problemas interno de mecanismos, la instalación no fuese capaz de desviar por la misma línea
todas las unidades de un pedido, y la evacuación sea parcial. Las unidades evacuadas de cada OT/Ola
son descontadas directamente de las unidades de la bolsa de reparto y forman el contenido del
contenedor de empaquetado.
Para tener una mejor trazabilidad, se aumentarán las unidades clasificadas de las líneas de distribución
de todas las órdenes de trabajo notificadas en el mensaje. El estado de los pedidos activos informados
se actualiza a CLASIFICADO.
Se debe informar con el mismo mensaje al módulo de empaquetado con la información del contenedor,
contenido y pedidos que lo forman, incluyendo el cuadrante que es desconocido por el clasificador.
En caso de que la evacuación del pedido ya fuese tratada porque el pedido ya está empaquetado o
clasificado, no se tratará la evacuación del pedido y se dejará traza en los logs. No se aumentan
unidades clasificadas, ni se modifica el estado del pedido ni se descuenta de la bolsa.
El sistema tratará en la evacuación pedidos que se encuentren cancelados en RBS según SGAEWEMS-RF-
105.3 pero no haya sido tratados como cancelado diferido. El pedido que había sido cancelado, y cuyo
estado es Cancelado, anteriormente deberá pasar al estado “cancelado diferido” para indicar que se
sigue tratando en el almacén. Se creará un nuevo pedido en estado “cancelando picado” que
contendrá las líneas que se han clasificado y no se han podido cancelar. Este nuevo pedido será
notificado al sistema de empaquetado usando la modificación de pedido (sobre el pedido ya existente
en EPAC), a la que se añadirá una nueva marca de cancelación para que dicho sistema lo pueda tratar
de forma adecuada.
El nuevo pedido en estado “cancelando picado” deberá estar asociado al mismo cuadrante y
contenedor a los que estaba asociado el pedido original. Esto permitirá que al escanear el código de
cuadrante o la matrícula del contenedor en el módulo de empaquetado, el pedido pueda ser tratado de
la manera correspondiente al estar cancelado. Se descontarán tantas unidades de la bolsa de reparto
como unidades se evacuen del pedido cancelado.
La evacuación en este tipo de orden de trabajo permite conocer el contenido teórico de los
contenedores que alcanzan las mesas de empaquetado. A diferencia del reparto por cuadrante, se sabe
la cantidad exacta que ha sido clasificada de la instalación anterior en cada contenedor. Cuando el
módulo de empaquetado informa que un pedido ha sido empaquetado, se traspasan las unidades del
contenedor evacuado a las cajas de pedido.
El contenido que se debe traspasar es el que está reservado directamente con el pedido tal y como lo
informó el módulo de clasificación. Pero si no hubiese contenido reservado para el pedido, bien por
problemas en la evacuación o porque se traspasó a un pedido previamente, se buscará otro contenido
en estado DISPONIBLE para traspasar. Si solo hubiese contenido en estado BLOQUEADO, se traspasa esa
unidad y se genera una variación de stock de bloqueado a disponible, que es el estado de stock de los
contenidos de las cajas de pedido. Por último, si el contenedor evacuado no contiene la unidad pero se
empaqueta igualmente, el origen es desconocido pero computará como stock de almacén al añadirse a
la caja de pedido; por lo que debe generarse ajuste de inventario positivo.
Cuando el clasificador termine de clasificar los pedidos de una OT/Ola informará al coordinador con el
mensaje FIND. Si hubiese unidades en la bolsa de reparto, se darán de baja ajustando el stock con
variaciones negativas. Se actualizará el estado de la OT/Ola y cuadrante a Clasificada.
En caso de haber pedidos de la OT/Ola para los cuales no se ha podido asignar alguna prenda, y por lo
tanto clasificado con incidencia, el clasificador lo notificará con el mensaje de pedido no clasificado
PDNC. El sistema deberá crear incidencias de tipo clasificación para todas las líneas de pedido y
notificarlas a EPAC con el mensaje INPE.
Se debe notificar a MSR el fin de las tareas de picking con el mensaje FIEC, para evitar que el cuadrante
sea asignado en el modo automático sin papel.
En las inducciones de prenda colgadas, los contenedores en forma de trolley que llegan a la instalación
son cargados en las líneas de alimentación manualmente. Esta línea no representa el puesto de
inducción llamado Marriage station, pues se encuentra más adelante y se realiza de manera
automática. Como el trolley no puede acceder físicamente a esa zona, cuando el operario carga las
unidades del trolley a la línea le asocia una etiqueta de ruta que será leída posteriormente en la
Marriage station.
El clasificador notificará esta acción con el mensaje TCON incluyendo OT/Ola, matrícula y skus y el
sistema debe realizar un traspaso de todo el contenido al nuevo contenedor formado por la etiqueta de
ruta. El resultado de la inducción una vez que pase por la Marriage station, el clasificador lo informará
con la etiqueta de la ruta, no con la matrícula del contenedor original.
El stock libre
Las bolsas de reparto de cada OT/Ola.
El stock libre y el de las bolsas de reparto de cada OT/Ola se consideran como stock DISPONIBLE a
efectos de CIS; ya que el stock libre está disponible para ser utilizado en próximas oleadas y por lo
Cuando la plataforma web solicite la sincronización de stock, se enviará una solicitud también a la
instalación de RBS. El motivo de esto es solucionar los desajustes ocurridos por pérdida de
procesamiento de mensajería. En respuesta a la solicitud se recibirá:
El Clasificador notificará las variaciones de stock libre del mismo con el mensaje VAST. Si no incluye
OT/Ola, se considera un ajuste sobre el stock libre, en la que se tendrá en cuentael signo del ajuste
para aumentar o disminuir las unidades del stock libre. El destino de la notificación es
Si el VAST incluye OT/Ola el clasificador está liberando unidades que tenía reservadas para una OT/Ola
y dejándolas como stock libre. El coordinador debe traspasar las unidades desde la bolsa de reparto de
la OT/Ola al stock libre de la instalación. Si las unidades en la bolsa son menos que las notificadas en el
VAST, generará ajuste de stock.
Si el VAST además de OT/Ola incluye el destino ERROR se trata de unidades que estaban reservadas
para la OT/Ola pero que se destinarán a una línea de ERROR, por motivos de layout no pueden ser
retornadas al Dynamic buffer. Estas unidades además de decrementar las unidades de la bolsa de
reparto, no generan déficit, al ser también decrementada la demanda de la OT/Ola por un evento
previo (cancelación de pedido o cierre).
Cada cierto tiempo se necesita purgar referencias del Dynamic Buffer de los DRM porque ocupan un
espacio destinado a clasificar. Si no se realizase esta tarea se podría llegar a una situación en la que la
mayoría del stock inducido estuviese ocupado por artículos fuera de venta. Por lo que desde el sistema
se podrá crear una orden de trabajo del tipo transferencia de stock unificado que se notificará al
módulo de clasificación, que después de agrupar los skus los destinará a una línea de evacuación. El
operario retirará de la línea las unidades para reubicarlas en el stock y de esta forma estar disponibles
para el picking sin desaprovechar los buffers de clasificación.
Se debe mostrar para la OT/Ola las unidades teóricas que serán las unidades que el RBS ha reservado
para la OT/Ola y las unidades que se han ubicado.
En el menú de stock de EWMS, existirá una nueva opción Órdenes movimiento stock. La interfaz de
usuario es similar a la de Movimiento interno. El usuario podrá buscar las órdenes de movimiento de
stock con los mismos filtros que en Movimiento interno.
Al crear una nueva orden, el sistema notificará a los sistemas de clasificación y almacenamiento la
orden de trabajo para que se creen y los operarios puedan trabajar con ellas. El mensaje notificado es
el DEOT; el motivo indicado en el mensaje es UN “OT movimiento stock unificado de RBS”.
Para tener un control informativo, aumentarán las unidades teóricas de la línea de recepción; de esta
manera el automatista podrá comprobar que se ubican todas las unidades evacuadas del stock libre.
Si el clasificador pierde unidades que había reservado previamente (con el NORA), lo notificará con el
mensaje NREI incluyendo la OT/Ola de movimiento de stock. Se decrementan las unidades teóricas de
la línea de la OT/Ola.
El área de almacenamiento notifica con mensaje MTOL las unidades ubicadas de una OT/Ola. Esto
provoca que aumenten las unidades ubicadas de la línea de la OT/Ola.
Se deben tener en cuenta todos los mensajes que puedan alterar el stock y afectan a los movimientos
de la OT/Ola como el TCON y REMC
El sistema debe poder permitir cerrar la orden del trabajo al automatista. Esta opción debe estar
controlada con permiso de tal forma que solo usuarios con permisos puedan realizarlas. Al cancelar la
OT
Tras procesar la información del mensaje FAPI, el módulo coordinador deberá enviar el mensaje FIEC al
módulo de almacenamiento para notificar al sistema de almacenamiento el fin de las tareas
de picking del cuadrante para el cual se han declarado los faltantes.
El siguiente paso será crear un nuevo cuadrante de faltas RBS (necesita un nuevo tipo de cuadrante) tal
y como se describe en el requisito SGAEWMS-RF-112-A – Creación de cuadrantes pero cuyo código
empezará por QF para poder distinguirlo del resto de cuadrantes fácilmente. Este cuadrante será
utilizado para realizar el picking en las áreas de almacenamiento del almacén de las unidades
pendientes de inducir en el RBS y deberá tener la máxima prioridad. Este cuadrante será oleado de
manera automática sin necesidad de intervención por parte de ningún operario del centro.
Los cuadrantes contendrán líneas de distribución, las cuales indicarán para cada referencia, qué
cantidad debe obtenerse del stock. Esta información será obtenida del mensaje FAPI enviado por el
RBS.
SGAEWMS-RR-001-A.Tiempos de respuesta
Se requerirán los tiempos de respuesta habituales en el proyecto SGA.
Se configurarán así todas aquellas que por su volumen pudiesen implicar una carga excesiva en el
sistema gestor de base de datos y cuya interrupción no supusiese un problema para el correcto
funcionamiento del eWMS. No utilizarán este tipo de acceso de solo lectura pantallas en las que el
usuario no introduce ningún filtro.
Serían susceptible de ser configuradas como solo lectura consultas como “Seguimiento de pedidos”,
“Seguimiento de órdenes de trabajo”, Variaciones de stock, Histórico de variaciones de stock, …
SGAEWMS-RS-001-A.Integración SSO
El sistema deberá estar integrado con el SSO corporativo.
SGAEWMS-RS-002-A.Control de acceso
Sin perjuicio de que puedan aplicar otras medidas de seguridad, el acceso a cualquier interfaz del
sistema deberá estar protegido por nombre de usuario y contraseña. Si se pudiese obtener la
información del usuario de la sesión de Windows no se mostrará la pantalla de login y se dará acceso a
las funcionalidades que estén definidas para el rol o roles del usuario
Trazabilidad
El sistema deberá contar con un sistema de trazas para todas las acciones que realice. Deberá permitir
la configuración del nivel de traza que se desea en cada momento así como el formato de las trazas.
Este sistema deberá contemplar las trazas clasificadas en los siguientes niveles:
DEBUG: Trazas colocadas por los programadores a efectos de depuración del sistema.
INFO: Trazas que informan de situaciones normales ocurridas durante la ejecución del sistema.
WARN: Trazas que informan sobre situaciones no recomendables pero que no provocan errores
en el sistema.
ERROR: Trazas que informan sobre errores ocurridos pero que permiten que el sistema siga
funcionando.
FATAL: Trazas que informan sobre errores ocurridos de carácter muy grave que impiden que el
sistema siga funcionando.
Es obligatorio incluir los mensajes las trazas de nivel INFO en los documentos de diseño funcional y
técnico para su validación.
La información que deberá incluir la traza será, al menos, una marca temporal, clase (o subsistema,
módulo…) desde donde se genera, mensaje informativo y, donde sea posible o relevante, usuario y
equipo desde el que se generó la traza.
En el caso concreto de los mensajes entre sistemas se deberán guardar todos los mensajes que envíen o
reciban los componentes del sistema. Además, los mensajes serán guardados en base de datos mediante
el componente de persistencia del proyecto SGA.
El sistema deberá permitir tanto la exportación en formatos CSV y/o TXT, como la impresión de
cualquier listado que muestre la interfaz de usuario. El fichero exportado contendrá el total de
registros obtenidos según el filtro aplicado por el usuario, independientemente de la cantidad de los
mismos.
El sistema deberá permitir la ordenación de los listados mostrados al usuario por cualquiera de los
campos que lo formen.
Cuando un formulario muestre información resumen o acumulados de los datos mostrados en pantalla;
la misma siempre representará el total según el filtro realizado por el usuario independientemente de
los datos visualizados por pantalla.
Cualquier dato de tipo lista consumido de otro sistema externo, deberá respetar el orden en el cual sea
consumido, no reordenando los elementos.
Si un RF necesitase un orden diferente para el tratamiento de los elementos, deberá ser especificado en
el propio RF.
Internacionalización
SGAEWMS-RI-200-A – Internacionalización
1. La aplicación deberá contar con un fichero por cada uno de los idiomas disponibles en la
aplicación.
2. Cualquier texto/mensaje que se muestre en una interfaz y no se obtenga de base de datos
deberá obtenerse del fichero de textos de la aplicación teniendo en cuenta el idioma
seleccionado por el usuario (incluidos textos estáticos de las interfaces, alarmas, textos
estáticos de los informes…).
3. Cualquier texto/mensaje obtenido de la base de datos y mostrado directamente al usuario
deberá mostrarse en el idioma seleccionado por el usuario. Para eso las tablas en las que
existan estos textos deberán estar preparadas para soportar varios idiomas. El esquema de
tablas será de la forma TABLA donde se encuentra el identificador y los campos con los valores
en el idioma por defecto y TABLA_IDIOMA donde se encontrará el identificador de la tabla
original, el identificador del idioma y los campos traducidos.
4. Se podrá mapear en el fichero de textos de la aplicación datos obtenidos de la base de datos
para el caso de que tenga un carácter estático (no se tiene previsto que haya más y en caso de
que haya más requiere cambio en la implementación del módulo, por ejemplo estados)
5. En caso de que el sistema esté usando cachés, se deberá tener en cuenta la
internacionalización. Para ahorrar recursos de memoria se deberá cachear el idioma por
defecto y los valores para los idiomas adicionales introducirlos en la caché en el momento que
se necesiten.
SGAEWMS-RI-300-A – Despliegue
Todas las aplicaciones y/o componentes que realicen el rol de servidor en una arquitectura cliente-
servidor deberán instalarse como servicios del sistema operativo sobre el que corran.
SGAEWMS-RI-400-A – Algoritmos
La utilización de un determinado algoritmo o fórmula por parte del sistema podrá ser sustituido por otro
sin que este cambio implique mayor esfuerzo que el necesario para desarrollar el mismo. El sistema
guardará en sus ficheros de configuración el nombre de la clase donde se implementen los algoritmos
activos según la lógica de negocio descrita.
Navegación formularios
El foco entre controles de un formulario se moverá únicamente mediante la utilización del tabulador, o
el uso del ratón.
1. El foco solo podrá ser activado en los controles editables por el usuario y/o los botones de
acción del formulario.
El orden de tabulación por defecto será de izquierda a derecha y de arriba abajo. Esto deberá de
tenerse en cuenta a la hora del diseño de los diferentes controles de un formulario. Si por la naturaleza
del formulario este orden debe de ser modificado, se deberá indicar claramente en el diseño funcional.
La tecla Intro invocará la acción por defecto asociada a dicho formulario. Ej: Buscar, Limpiar, Filtrar…
1. El tamaño de la ventana temporal, fuera de la cual se eliminan los registros, será un parámetro
configurable en el sistema.
2. Añadido al umbral temporal citado, pueden existir otros criterios que se deben de cumplir para
poder efectuar la limpieza de los registros como puede ser que el estado del registro esté en un
estado finalizado, cerrado, etc. en función del caso concreto que se esté tratando.