Integraciones
Cómo conectar un MES con un ERP
El ERP decide qué hay que fabricar y cuánto cuesta; el MES sabe qué se está fabricando de verdad, con qué material y con qué incidencias. Conectarlos bien significa acordar quién manda en cada dato, cómo viajan órdenes y confirmaciones, y qué ocurre cuando un mensaje se pierde o llega dos veces.
- Publicado
- Revisado
- Lectura
- 5 min
- Por
- colectivedata
Dos sistemas con horizontes distintos
El ERP trabaja con días, semanas y costes: planifica necesidades, lanza órdenes de fabricación, valora inventario y cierra el mes. El MES trabaja con minutos y piezas: secuencia la orden en una máquina, registra quién la ejecuta, qué lote de material se consume, cuántas unidades salen buenas y cuántas se rechazan. Ninguno puede hacer bien el trabajo del otro, y por eso la frontera entre ambos es una decisión de diseño, no un detalle técnico.
Como marco conceptual para esa frontera se cita a menudo la serie ISA-95 de la International Society of Automation, que trata la integración entre los sistemas de empresa y los de control de fabricación. No hace falta implantarla al pie de la letra, pero su separación entre el nivel de gestión del negocio y el de operaciones de fabricación ayuda a ordenar la conversación entre los equipos de ERP y de planta.
Datos maestros: quién es el dueño de cada dato
Antes de mover una sola orden hay que acordar los datos maestros: artículos, listas de materiales, rutas u hojas de operaciones, centros de trabajo, unidades de medida y, a veces, personal y turnos. La regla más sana es que cada dato tenga un único sistema maestro y que el otro lo reciba, sin editarlo localmente.
| Dato | Maestro habitual | Qué recibe el otro sistema | Punto delicado |
|---|---|---|---|
| Artículo y unidad de medida | ERP | Código, descripción, unidad, control por lote o serie | Conversiones entre unidad de compra y de consumo |
| Lista de materiales | ERP (ingeniería o producción) | Versión vigente para la orden | Cambios de versión con órdenes ya lanzadas |
| Ruta y operaciones | ERP o MES, según dónde se mantenga el detalle | Operaciones y centros de trabajo | Tiempos estándar frente a tiempos reales |
| Parámetros de proceso y recetas | MES | Normalmente nada, o solo referencias | No duplicarlos en el ERP |
| Personal y turnos | Sistema de RR. HH. o MES | Identificador del operario en confirmaciones | Datos personales: enviar lo mínimo |
Un error frecuente es dejar que el MES cree artículos «provisionales» para no parar la línea. Funciona el primer día y genera conciliaciones manuales durante meses. Es preferible un procedimiento rápido de alta en el maestro que permitir altas paralelas.
Órdenes: del lanzamiento a la ejecución
El flujo descendente típico es el envío de la orden de fabricación liberada en el ERP hacia el MES. La orden debería viajar con lo necesario para ejecutarla sin consultas adicionales: artículo, cantidad, fechas, versión de lista de materiales y de ruta, lote previsto si lo hay y prioridad.
- Estados: define qué estados del ERP se envían (liberada, modificada, cerrada técnicamente) y cómo se reflejan en el MES.
- Modificaciones: decide si se permite cambiar cantidad o fecha de una orden ya iniciada en planta, y cómo se notifica.
- Cancelaciones: una orden cancelada en el ERP con consumos ya registrados en el MES necesita una regla explícita.
- Secuenciación: normalmente es responsabilidad del MES o de un planificador detallado, no del ERP.
Confirmaciones: lo que sube de planta
El flujo ascendente informa al ERP de lo que realmente ha pasado: cantidades buenas y rechazadas, consumos de material por lote, tiempos de operación, entradas de producto terminado y cierre de la orden. Aquí hay que decidir el grano: confirmar cada pieza, cada palé, cada operación o solo al final de la orden.
| Grano | Ventaja | Inconveniente |
|---|---|---|
| Al cerrar la orden | Pocos mensajes, integración sencilla | Inventario y costes desactualizados durante la fabricación |
| Por operación | Avance visible en el ERP y costes por fase | Más mensajes y más reglas de corrección |
| Por unidad de manipulación (palé, contenedor) | Existencias reales casi al momento | Exige identificación fiable en planta |
| Por pieza | Máximo detalle | Volumen alto; suele bastar con que el detalle se quede en el MES |
Una pauta razonable es mantener el detalle fino en el MES y enviar al ERP agregados con significado contable o logístico. Las correcciones (una confirmación errónea, una merma descubierta tarde) deben viajar como movimientos de anulación o ajuste, nunca como borrado.
Idempotencia: que repetir un mensaje no duplique nada
En una red industrial los mensajes se pierden, se reintentan y a veces llegan dos veces. Si el ERP registra dos veces la misma confirmación, el inventario queda mal y alguien tendrá que encontrarlo. La idempotencia es la propiedad de que procesar un mismo mensaje varias veces produzca el mismo resultado que procesarlo una sola vez.
- Asigna a cada confirmación un identificador único generado en origen, no en el destino.
- El receptor guarda los identificadores procesados y descarta, con registro, los repetidos.
- Envía cantidades como movimientos identificados, no como totales acumulados que se sobrescriben sin control.
- Respeta el orden cuando importa: un cierre de orden no debería procesarse antes que su última confirmación.
- Documenta qué hace el receptor ante un identificador repetido con contenido distinto: normalmente, rechazar y avisar.
Gestión de errores y operación diaria
La planta no puede detenerse porque el ERP esté en mantenimiento. Por eso el MES debería poder seguir trabajando y acumular las confirmaciones pendientes, que se envían cuando el destino vuelve a estar disponible. Lo que no puede ocurrir es que un error quede escondido en un registro técnico que nadie lee.
- Cola persistente de mensajes salientes en el MES, con reintentos y límite.
- Bandeja de errores funcionales legible por una persona de producción o de sistemas: «artículo bloqueado», «lote inexistente», «orden cerrada».
- Opción de corregir el dato y reprocesar, conservando la trazabilidad de lo que se hizo.
- Avisos cuando un flujo lleva demasiado tiempo sin mensajes o la cola crece por encima de lo normal.
- Conciliación periódica: comparar órdenes abiertas y existencias en ambos sistemas para detectar desviaciones.
Criterios de decisión antes de empezar
- ¿Está documentado qué sistema es maestro de cada dato y quién lo mantiene?
- ¿Se ha acordado el grano de confirmación con producción, logística y control de gestión?
- ¿Cada mensaje tiene identificador único y el receptor sabe tratar duplicados?
- ¿El MES puede trabajar si el ERP no responde, y hay una cola visible de pendientes?
- ¿Existe una bandeja de errores con responsable y procedimiento de reproceso?
- ¿Se ha previsto una conciliación periódica entre ambos sistemas?
- ¿Se han probado los casos difíciles: cancelación con consumos, cambio de lista de materiales, merma tardía?
Si varias respuestas son negativas, el primer entregable no debería ser código, sino un documento de interfaz acordado entre los equipos de planta y de sistemas. Con él, la construcción es mucho más previsible.
Fuentes
- ISA-95 Standard: Enterprise-Control System Integration — International Society of Automation (ISA)
Contenido informativo elaborado por colectivedata. No sustituye un análisis específico de tu caso.
Relacionado
Más sobre integraciones
Todo el conocimiento- Cómo calcular el coste de una integración entre sistemas«Conectar el ERP con la tienda» puede ser una tarea de pocos días o un proyecto de meses, y la diferencia rara vez está en la tecnología elegida.
- ERP a medida frente a ERP comercial: cómo decidirLa pregunta casi nunca es «a medida o comercial» en abstracto, sino qué parte de vuestra operación es estándar y qué parte os distingue.
- Integración de APIs de terceros: autenticación, reintentos y mantenimientoConectar con la API de una pasarela de pago, un transportista, un proveedor de firma o una administración pública parece sencillo en la documentación.
¿Tienes un proyecto parecido? Cuéntanos qué necesitas.