SAP S/4HANA · AWS · Inteligencia de Ventas

Tus datos de SAP
hoy son tablas.
Mañana son decisiones.

Este es el viaje que recorre cada venta: nace en SAP, se depura capa por capa y llega convertida en indicadores confiables a tus tableros. Sin tocar tu SAP productivo.

0filas procesadas desde SAP
0en ventas netas analizadas
0tableros de decisión

El recorrido en 3 grandes bloques

Una sola historia, contada de principio a fin

No necesitas ser técnico para entenderlo. Sigue el dato: de dónde viene, cómo se limpia y en qué se convierte cuando llega a tus manos.

01

De dónde vienen

El proceso comercial que ya conoces en SAP: del pedido a la factura.

02

Cómo se transforman

La estrategia Medallion: el dato sube de bronce a plata y a oro.

03

Qué llega a decidir

Indicadores confiables, idénticos en QuickSight y Power BI.

Bloque 1 · De dónde vienen los datos

Todo empieza en tu proceso de ventas

Cada venta deja una huella en SAP: un pedido, una entrega, una factura. Nosotros leemos esa huella sin interrumpir tu operación y la llevamos a AWS para trabajarla. SAP sigue siendo la fuente; AWS hace el análisis.

Pedido

El cliente ordena

VBAK · VBAP

Entrega

Sale la mercadería

LIKP · LIPS

Factura

Se cobra la venta

VBRK · VBRP

Trazabilidad

Todo queda enlazado

VBFA · flujo

Sin riesgo para tu SAP

Leemos en ventanas de baja carga, solo lectura, sin abrir SAP a internet. Tu productivo no se toca en cada consulta.

Conexión privada y cifrada

El dato viaja por red privada hacia AWS. Credenciales protegidas, todo cifrado de extremo a extremo.

Siempre actualizado

Una carga inicial completa y luego solo lo que cambia. Tus tableros reflejan la realidad del negocio.

Bloque 2 · La estrategia Medallion

El dato sube de bronce a oro

El dato crudo de SAP no sirve para decidir tal cual: viene en códigos, sin nombres, sin contexto. Lo hacemos subir por cuatro capas. En cada una queda más limpio, más completo y más entendible, hasta llegar al oro: información lista para el negocio.

  1. RAW

    Datos crudos

    Tal como salen de SAP. Sin tocar.

  2. BRONCE

    Normalizado

    Tipos, fechas y textos ordenados.

  3. PLATA

    Limpio y relacionado

    Sin duplicados, todo conectado.

  4. ORO

    Listo para negocio

    Con nombres, KPIs y contexto.

Mira cómo cambia un mismo registro al subir:

RAW tal cual sale de SAP

¿Y si un dato viene mal?

No contamina el resto. Se aparta en una zona de cuarentena y queda auditado. Solo el dato confiable llega al oro.

Bloque 3 · Qué llega a los tableros

Del oro a la decisión

Sobre la capa de oro construimos una única fuente de verdad: las vistas de negocio. De ahí beben todos los tableros. Un indicador se define una sola vez y se ve igual en todas partes.

Vistas de negocio kpi_* · sem_* una sola definición del KPI
Amazon QuickSight
Microsoft Power BI

Misma fórmula, mismo número. Sin discusiones sobre "de dónde salió esa cifra".

0 Ventas Netas kpi_revenue_summary
0 Documentos facturados sem_billing
0 Ticket promedio Average Ticket
0 Clientes activos Active Customers

Ventas Ejecutivo

Ventas netas, tendencia con pronóstico, top clientes y productos.

Abrir tablero

Cliente 360

Evolución por cliente, mix de productos y última factura.

Abrir tablero

Producto 360

Ventas por producto, cantidad facturada y nivel de cumplimiento.

Abrir tablero

Order-to-Cash

Embudo del proceso, días de ciclo y nivel de servicio (fill rate).

Abrir tablero

Rentabilidad y Territorio

Margen por zona geográfica, organización de ventas y desempeño regional.

Abrir tablero

Los tableros abren en Amazon QuickSight y requieren acceso autorizado. En vivo se presentan con una sesión iniciada.

Para quienes quieren el detalle

Bajo el capó

Hasta aquí, la historia. Si quieres ver la ingeniería que la sostiene, aquí está: la arquitectura completa, cómo se carga y se mantiene el dato, y de dónde sale exactamente cada cifra. Explora lo que te interese; no hace falta leerlo todo.

Arquitectura

El recorrido completo, de SAP a la decisión

Toca cualquier componente para ver qué hace, en simple y en técnico.

SAP
Ingesta AWS
Data Lake
Consumo
Selecciona un componente

Explora la arquitectura

Toca cualquier caja del diagrama para ver qué hace, explicado en simple.

Conexión con SAP

¿Cómo extraemos el dato de SAP?

Dos capas de acceso, cada una donde rinde mejor: la capa ABAP (RFC / OData) y la capa masiva (HANA JDBC). Aquí el sustento de la decisión.

Principio rector: SAP no se consulta cada vez que abres un tablero. SAP es la fuente; AWS es la plataforma de análisis. Extraemos una vez, analizamos muchas. Así tu SAP productivo nunca carga el peso de los reportes.

Capa ABAP RFC · OData Camino por defecto

Entra "por la puerta" de la aplicación: RFC (BAPI / módulos Z, vía pyrfc) y OData (servicios REST sobre CDS Views).

  • Respeta autorizaciones y lógica de negocio SAP
  • Semántica de negocio ya modelada (CDS / BAPI)
  • Filtra, pagina y hace delta en el origen
  • Carga media sobre el servidor de aplicación

Se usa para: el día a día transaccional de SD (pedidos, entregas, facturas) y entidades expuestas como servicio.

Capa masiva HANA JDBC · hdbcli Cargas masivas

Lee directamente la base de datos HANA con un usuario de solo lectura.

  • Muy eficiente en volúmenes enormes
  • Baja carga sobre el servidor de aplicación
  • No pasa por la lógica de la app (lee tablas/vistas)
  • Requiere permiso; en RISE está confirmado disponible

Se usa para: la carga histórica inicial (millones de filas) y reconciliación.

¿Y si mañana cambia el método?

No importa. El pipeline es el mismo desde que el dato entra al lago. Cambiar entre la capa ABAP (RFC/OData) y la capa masiva (JDBC) no rediseña la plataforma.

Capa ABAP · RFC / OData Capa masiva · HANA JDBC
RAW → Bronce → Plata → Oro → Tableros idéntico, sea cual sea el conector
El corazón de la plataforma

La capa semántica: una sola verdad

Aquí vive la lógica de negocio. Vale la pena entender el qué, el cuándo y el por qué de cómo está construida.

Sin capa semántica

Tres personas, tres cifras

Analista A (Excel)S/ 471.2M
Analista B (reporte propio)S/ 480.9M
Analista C (otra fórmula)S/ 465.0M

Cada quien filtra y calcula distinto. La reunión se va en discutir de dónde salió el número.

Con capa semántica

Una definición, una cifra

Ventas Netas S/ 477.6M kpi_revenue_summary · idéntico en todos lados

La fórmula se define una vez. Todos ven el mismo número. La reunión se va en decidir, no en discutir.

El qué · Catálogo de reglas de negocio

Cada indicador tiene una definición empresarial única: qué mide, cómo se calcula, de dónde sale y quién lo gobierna.

Net RevenueFinance BI

Valor neto facturado a nivel de ítem de factura.

SUM(net_value)
Fuente: fact_billingGrano: ítem de factura

Excluye tipos de factura de anulación.

Fill RateSupply Chain BI

Qué proporción de lo pedido se entregó realmente.

SUM(delivered_qty) / SUM(ordered_qty)
Fuente: fact_deliveryGrano: ítem de entrega
BacklogSales Ops

Pedidos confirmados que aún no se entregan.

SUM(confirmed_open_value)
Fuente: fact_sales_orderGrano: ítem de pedido
Average TicketSales BI

Cuánto vale, en promedio, cada documento de venta.

NET_REVENUE / COUNT(DISTINCT billing_document)
Deriva de: Net RevenueGrano: periodo
Order-to-BillingSales Ops

Días promedio entre crear el pedido y facturarlo.

AVG(billing_date − order_date)
Fuente: document_flowGrano: cadena de docs
Active CustomersSales BI

Clientes con al menos una factura en el periodo.

COUNT(DISTINCT customer_id)
Fuente: fact_billingGrano: periodo

El por qué · La lógica vive en la vista, no en la herramienta

Si cada herramienta calculara sus KPIs, tarde o temprano divergen. Por eso la fórmula se define una vez y las herramientas solo la leen.

1. Cambia la fórmula

Se ajusta en un solo lugar: la vista views.py / kpi_*.

2. Se redespliega la vista

Un solo cambio en la capa semántica de Athena.

3. Ambas heredan

QuickSight y Power BI muestran el nuevo valor. Sin tocar cada reporte.

Regla de paridad: SUM(net_value) en la vista = misma cifra en QuickSight = misma cifra en Power BI. Verificado automáticamente: si difieren, la prueba falla.

El cuándo · Cada regla se aplica en su capa

No toda la lógica vive en el mismo sitio. Cada tipo de regla entra donde corresponde.

Tipo de reglaEjemplo¿Dónde se aplica?
Filtros de negocio Excluir facturas de anulación Vista de KPI (Gold)
Grano Ítem vs documento vs periodo Modelo estrella (Gold)
Relaciones Ligar pedido → entrega → factura Silver (VBFA)
Time-intelligence YTD, YoY % Vista / medida BI
Seguridad por fila Cada quien ve su sales_org Vista + reflejo en BI

Contrato de datos por dataset

Cada vista publicada tiene esquema versionado, dueño responsable y SLA de frescura. Es un compromiso explícito, no una tabla suelta.

esquema versionadoowner definidoSLA de frescuraclasificación de datos
Carga de datos

¿Cómo se mantiene todo actualizado?

Una vez se trae la historia completa. Después, solo lo que cambia.

FULL

Carga histórica (una vez)

Traemos toda la historia de SAP, dividida en bloques manejables para no saturar el sistema.

  • 8.2M filas cargadas por chunks (por mes/año)
  • VBFA (5.36M) por Fargate, sin límite de tiempo
  • Concurrencia limitada en ventana de baja carga
  • Idempotente: reejecutar un bloque no duplica
DELTA

Incremental (permanente)

Cada pocas horas traemos únicamente los documentos nuevos o modificados. Rápido y barato.

  • Watermark: recordamos hasta dónde leímos
  • Ventana de solapamiento: releemos el borde para no perder nada
  • Deduplicación por clave de negocio (documento+ítem)
  • Programado por EventBridge (cada 4 h en prod)
Trazabilidad

Anatomía de un KPI: ¿de dónde sale esa cifra?

Seguimos Ventas Netas desde el campo crudo de SAP hasta el tablero. Sin magia.

  1. 1
    SAP · origen

    Campo NETWR en VBRP

    El valor neto de cada ítem de factura, tal como SAP lo registra.

  2. 2
    Silver

    Normalizado y validado

    Tipado a decimal, moneda PEN reconocida, ligado a su factura. Sin duplicados (Iceberg MERGE).

  3. 3
    Gold

    Hecho fact_billing

    Modelo estrella: el ítem de factura enlazado a cliente, material, fecha y organización de ventas.

  4. 4
    Capa semántica

    Vista kpi_revenue_summary

    Net Revenue = SUM(net_value) — definida una sola vez, en el catálogo.

  5. Tablero

    S/ 477.6M en pantalla

    La misma cifra en QuickSight y Power BI. Trazable hasta el campo de SAP que la originó.

Modelo de datos

¿Estrella o copo de nieve? Elegimos estrella

La forma en que organizamos hechos y dimensiones en el oro. Aquí el porqué de la decisión.

Pasa el cursor (o toca) un hecho para ver con qué dimensiones se relaciona.

Grano: cada fila es un ítem de documento (ítem de factura, de pedido, de entrega). El nivel de detalle más fino, para poder agregar como se quiera.

Estrella nuestra elección

Hechos al centro, dimensiones directamente alrededor. Plano y simple.

  • Menos joins → consultas más rápidas y baratas en Athena/QuickSight
  • Fácil de entender para el negocio
  • Ideal para herramientas de BI y visualización

Copo de nieve

Dimensiones normalizadas en cadenas de tablas. Ahorra almacenamiento.

  • Más joins → consultas más lentas
  • Más complejo de navegar para el usuario
  • Ahorra espacio, pero en S3 el espacio es barato

El sustento: el copo de nieve normaliza para ahorrar almacenamiento; la estrella prioriza velocidad de consulta y claridad. Con S3 el almacenamiento cuesta poco, así que optimizamos lo que de verdad importa: que los tableros respondan rápido y que el negocio entienda el modelo. El matiz: usamos SCD Tipo 2 en cliente y material para conservar la historia de cambios, sin renunciar a la simpleza de la estrella.

Las capas por dentro

Qué pasa exactamente en cada medalla

Despliega la capa que te interese.

RAW Datos crudos, tal cual salen de SAP

Formato: JSONL comprimido (gzip) en S3. Qué guardamos: el dato original sin modificar, con metadatos del lote (entidad, rango, timestamp, job_id).

Por qué: tener el original intacto permite reprocesar sin volver a molestar a SAP. Es nuestra red de seguridad y la base de la auditoría.

BRONCE Normalización técnica

Qué pasa: tipos de dato correctos (fechas SAP YYYYMMDD → fecha real, textos, decimales), encoding y nombres de campo consistentes.

Resultado: el dato deja de ser un volcado crudo y se vuelve legible por máquina, listo para relacionarse.

PLATA Limpio, relacionado, sin duplicados

Tecnología: tablas Apache Iceberg. Cada carga hace MERGE por clave de negocio (documento + ítem), así reejecutar nunca duplica.

Qué se gana: pedidos, entregas y facturas quedan enlazados vía el flujo de documentos (VBFA). Los registros que fallan validación van a cuarentena.

ORO Modelo de negocio listo para decidir

Modelo estrella: hechos (fact_billing, fact_sales_order, fact_delivery) rodeados de dimensiones (cliente, material, fecha, organización).

Enriquecimiento: códigos SAP resueltos a nombres (KUNNR → "SAN FERNANDO S.A."). Historial de cambios preservado (SCD tipo 2) en cliente y material.

Seguridad y gobierno

Confianza de extremo a extremo

El dato está protegido y cada cifra es auditable.

Zero Trust

Roles IAM por servicio y entorno. Sin credenciales estáticas, mínimo privilegio.

Cifrado KMS

Datos cifrados en reposo con llaves propias (CMK por capa) y en tránsito por TLS.

Secrets Manager

Las credenciales de SAP/HANA nunca están en el código. Se leen protegidas y rotables.

Seguridad por fila

Cada usuario ve solo su organización de ventas (sales_org). Definido una vez, reflejado en ambos BI.

Auditoría y linaje

Reconciliación origen = cargado en cada corrida. Se sabe de dónde viene cada dato.

Cuarentena

El dato que falla calidad se aparta y se audita. Solo lo confiable llega al oro.

Por qué esta plataforma

Una decisión no debería depender de un Excel

Fuente única

Un indicador, una definición. Igual en QuickSight y Power BI.

Datos confiables

Trazabilidad de SAP al KPI. Todo auditado, nada inventado.

Escala real

Más de 8 millones de filas procesadas de forma idempotente.

Sin candados

Arquitectura abierta en AWS. Cambias de herramienta BI cuando quieras.

De SAP a la decisión, con datos en los que puedes confiar.

Montana BI · SAP S/4HANA SD sobre AWS