Últimamente el término Clean Core está en boca de todos, o al menos, de muchos.
Pero… ¿qué significa realmente? Aquí intentamos dar una explicación sencilla, pensada para no técnicos (y para técnicos que quieran explicarlo de manera fácil a otros).
¿Qué es Clean Core?
La idea es simple: mantener el núcleo de SAP S/4HANA limpio, sin modificaciones directas. En lugar de los zetas de toda la vida, cualquier personalización al estándar se haría con extensiones aprobadas por SAP. ¿Por qué?
- Para que las actualizaciones no rompan nada.
- Para poder adoptar innovaciones más rápido.
- Para reducir costes de mantenimiento y riesgos técnicos.
¿Dónde aplica?
- S/4HANA Public Cloud ®Nosepuedetocarelestándar.
- S/4HANA Private Cloud (RISE) ®Aúnsepermitecódigoantiguo,peroSAPempujaalimpiar.
- S/4HANA On-Premise ® opcional, pero muy recomendable para no tener un sistema ‘pesado y viejo’.
¿Cómo se hacen las extensiones entonces?
Aquí encontramos dos formas bien distintas:
- In-App Extensibility (dentro de SAP)
- Custom Fields & Logic: añadir campos Z y lógica ligera.
- UI Adaptation: personalizar pantallas Fiori sin código.
- Workflows y BRF+: reglas de aprobación configurables.
- Custom Business Objects: tus propias ‘tablas Z’ pero limpias.
- Embedded Analytics: informes y KPIs personalizados.
Ideal para cambios rápidos y sencillos.
- Side-by-Side Extensibility (fuera, en SAP BTP)
Se usan APIs y eventos para conectar S/4HANA con aplicaciones externas en SAP BTP.
Ejemplo: una app que analiza proveedores con IA y se conecta vía API al módulo de compras.
Ideal para lógica compleja, integraciones o apps nuevas.
¿Y las famosas BAdIs?
- BAdIs clásicas ABAP (de ECC) No son Clean Core, ensucian el núcleo.
- Key User BAdIs (expuestas en Fiori / Custom Fields & Logic) Sí son parte del In-App extensibility y son Clean Core friendly.
En pocas palabras: no todas las BAdIs valen. Solo las que SAP ha ‘limpiado’ y puesto en el marco de extensibilidad.
Ejemplos en Compras (MM)
En el módulo de compras,, por ejemplo, Clean Core podría aplicarse así:
- No Clean Core: modificar un programa estándar para validar importes en un
- Clean Core: usar la BAdI MM_PUR_S4_PO_MODIFY_ITEMparaañadirunaregladevalidaciónalcrearun
Otros ejemplos de BAdIs In-App disponibles:
- MM_PUR_S4_PR_MODIFY_ITEM: lógica en solicitudes de pedido.
- MM_PUR_S4_PO_RELEASE: personalizar la liberación de pedidos.
- MM_PUR_S4_RFQ_MODIFY_HEADER/ITEM: validar peticiones de oferta.
- MM_PUR_S4_PO_OUTPUT: controlar la salida de pedidos (email, impresión, etc.).
Ventajas y riesgos de Clean Core
Ventajas:
- Más fácil actualizar.
- Menos deuda técnica.
- Preparado para la nube.
- Costes de mantenimiento menores.
Riesgos/retos:
- Coste inicial de migrar desarrollos antiguos.
- Necesidad de aprender nuevas herramientas.
- Algunas limitaciones respecto al ‘código libre’ de
Clean Core no es una moda, es una necesidad.
SAP quiere que todos los clientes tengan un sistema fácil de actualizar y preparado para la nube.
La regla de oro es simple: No toques el estándar. Si necesitas cambiar algo, usa las herramientas In-App o Side-by-Side.’
Así tendrás un sistema moderno, limpio y listo para crecer sin dolores de cabeza.