Skip to main content

Diseño técnico - Ventas brutas

Objetivo

Documentar el diseño técnico del proceso NB_Silver_Ventas_Brutas, describiendo la arquitectura de procesamiento, componentes, objetos intermedios, dependencias y estrategia de carga utilizada para construir y mantener la tabla as4_fact_ventas en la capa Silver.

Alcance

Dentro del alcance

  • Parametrización del notebook mediante widgets.
  • Preparación de funciones auxiliares utilizadas durante el procesamiento.
  • Construcción de objetos ODS intermedios.
  • Procesamiento de las corrientes transaccionales NFD y APCXNVO.
  • Generación de dimensiones auxiliares internas del proceso.
  • Enriquecimiento con dimensiones y tablas consumidas.
  • Consolidación de información en stg_ventas_ODS.
  • Carga incremental de la tabla final as4_fact_ventas.

Contenido principal

Descripción general

El proceso muestra un flujo de procesamiento compuesto por la construcción de objetos ODS intermedios, la generación de dimensiones auxiliares, el procesamiento de las corrientes transaccionales NFD y APCXNVO, la consolidación de la información en staging y la carga incremental de la tabla final.

Durante la ejecución se construyen objetos ODS auxiliares, se procesan las corrientes transaccionales, se realizan enriquecimientos mediante dimensiones consumidas por el proceso, se calculan medidas comerciales y se consolida la información en stg_ventas_ODS antes de su persistencia en cat_master_alpura.sch_silver_layer.as4_fact_ventas.

Componentes técnicos

ComponenteDescripción
WidgetsParametrizar la ejecución mediante w_StartDate, w_EndDate, w_catalog, w_schema origin y w_schema destiny.
Fuentes transaccionalesProveer las corrientes transaccionales NFD y APCXNVO.
ODS intermediosAlmacenar resultados temporales utilizados durante el procesamiento.
Dimensiones auxiliaresGenerar información complementaria de rutas y promociones.
Dimensiones maestrasEnriquecer la información de ventas mediante lookups de cliente, producto, depósito, canal, ejecutivo y tipo de venta.
StagingConsolidar ambas corrientes transaccionales en stg_ventas_ODS antes de la carga final.
Tabla de hechosPersistir la información consolidada en as4_fact_ventas.

Dependencias

Se identificaron las siguientes dependencias asociadas al proceso:

Notebook principal

  • NB_Silver_Ventas_Brutas

Dimensiones entregadas por DBC

  • NB_Silver_DS_Channel
  • NB_Silver_DS_Client
  • NB_Silver_DS_Periodo
  • NB_Silver_DS_Productos(SIDEFF)
  • NB_Silver_Dim_Date
  • Dim_depositos

Librerías compartidas

Se identificó el uso de librerías compartidas mediante:

%run /Workspace/Shared/Alpura_DEV/00_Framework/NB_FRAMEWORK_LIBRARIES

Persistencia

Persistencia Delta Lake mediante saveAsTable y proceso incremental basado en DELETE + APPEND.

Funciones auxiliares

Se identifica las siguientes funciones auxiliares utilizadas durante el procesamiento:

  • Función
    • GetDateInNumber
    • safe_divide
    • div_proyeccion_dVta

Objetos ODS Intermedios

Durante la ejecución se construyen los siguientes objetos ODS:

ObjetoConstrucción / Uso identificado
as4_mcterut_ODSConstruido desde as4_mcterut y as4_mcten, filtrando clientes activos con STSCTE = 'A'.
as4_mlispren_ODSConstruido desde as4_mlispren, filtrando por rango de FECPRO.
as4_apcxnvo_ODSConstruido a partir de as4_apcxnvo y una agregación de as4_mlispren_ODS.
as4_rutas_ODSConstruido a partir de rutas consolidadas desde NFD y APCXNVO.
as4_promo_ODSGenerado a partir de los cve_promo de NFD.
as4_alpsigin_ODSConstruido desde as4_alpsigin para exclusión de registros en APCXNVO por anti-join.
stg_ventas_ODSStaging consolidado generado a partir de la unión de NFD y APCXNVO.

Dimensiones Auxiliares Generadas

El proceso genera o actualiza las siguientes dimensiones auxiliares internas:

ObjetoDescripción
as4_dim_rutasDimensión generada después de consolidar rutas desde NFD y APCXNVO.
as4_dim_promoDimensión generada a partir de as4_promo_ODS y enriquecida con as4_adpdepc.

Clasificación de objetos

Dimensiones documentadas (con DBC entregado)

ObjetoResultado identificado del DBC
snw_dim_canalNotebook NB_Silver_DS_Channel actualiza/reconstruye cat_master_alpura.sch_bronze_layer.snw_dim_canal
snw_dim_clientesNotebook NB_Silver_DS_Client reconstruye cat_master_alpura.sch_bronze_layer.snw_dim_clientes
oon_bi_dwh_periodosNotebook NB_Silver_DS_Periodo actualiza cat_master_alpura.sch_bronze_layer.oon_bi_dwh_periodos
as4_dim_productos_sideffNotebook NB_Silver_DS_Productos(SIDEFF) genera cat_master_alpura.sch_bronze_layer.as4_dim_productos_sideff
V_Cat_Date / V_Dim_Date / V_Cat_Date_ESP / V_Dim_Date_ESPNotebook NB_Silver_Dim_Date genera vistas de calendario
snw_depositNotebook Dim_depositos actualiza cat_master_alpura.sch_bronze_layer.snw_deposit

Tablas Migradas Consumidas sin Trazabilidad Completa

Los siguientes objetos son consumidos por el notebook principal, pero no fue posible identificar completamente su construcción a partir de los DBC entregados.

ObjetoObservación
snw_dim_fuenteConsumida en el notebook principal; no se proporcionó DBC de construcción
snw_dim_ejecutivos_vtasConsumida en el notebook principal; no se proporcionó DBC de construcción
snw_dim_tipo_ventaConsumida en el notebook principal; no se proporcionó DBC de construcción
snw_dim_productosConsumida en el notebook principal; el DBC entregado genera as4_dim_productos_sideff, no snw_dim_productos
v_dim_date_espConsumida como vista Gold; el DBC de fechas entregado genera V_Dim_Date_ESP, por lo que se asume dependencia relacionada pero no idéntica

Flujo técnico

  1. Lectura de parámetros, se obtienen los parámetros necesarios para la ejecución mediante widgets configurados en el notebook, parámetros identificados:

    • w_StartDate
    • w_EndDate
    • w_catalog
    • w_schema origin
    • w_schema destiny
  2. Inicialización del proceso, se ejecutan tareas de preparación, incluyendo limpieza de caché y definición de funciones auxiliares utilizadas durante el procesamiento, funciones identificadas:

    • GetDateInNumber
    • safe_divide
    • div_proyeccion_dVta
  3. Construcción de ODS auxiliares, se generan los objetos intermedios requeridos para el procesamiento de las corrientes transaccionales, objetos generados:

    • as4_mcterut_ODS
    • as4_mlispren_ODS
    • as4_apcxnvo_ODS
    • as4_nfd_ODS
    • as4_rutas_ODS
    • as4_promo_ODS
    • as4_alpsigin_ODS
  4. Construcción de dimensiones auxiliares, se generan dimensiones internas utilizadas durante el enriquecimiento de la información, dimensiones generadas:

    • as4_dim_rutas
    • as4_dim_promo
  5. Procesamiento de la corriente NFD, se construye aplicando filtros de producto, enriquecimientos mediante dimensiones y cálculos de medidas comerciales, actividades identificadas:

    • Unión con as4_mpro.
    • Filtro de NUMFAM not in (54,96).
    • Lookups a cliente, depósito, fuente, producto, fecha, ruta, canal y ejecutivo.
    • Cálculo de métricas comerciales.
  6. Procesamiento de la corriente APCXNVO, se construye aplicando transformaciones, enriquecimientos y exclusiones de registros, actividades identificadas:

    • Recalculo de impbto.
    • Generación de cve_promo.
    • Exclusión mediante anti-join con as4_alpsigin_ODS.
    • Lookups a cliente, depósito, cliente-distribuidor, fuente, producto, fecha, ruta, canal, ejecutivo y tipo de venta.
  7. Homologación y consolidación, ambas corrientes son transformadas a una estructura común y consolidadas en un único staging, objeto generado:

    • stg_ventas_ODS
    • Operación identificada: unionByName
  8. Filtrado y preparación de la carga, el staging consolidado es filtrado utilizando el rango de fechas recibido y se agregan los atributos requeridos para la persistencia final, actividades identificadas:

    • Filtro por rango de fechas.
    • Asignación de Origen = 'AS400'.
    • Conversión al esquema final.
  9. Carga incremental de la fact, se actualiza la tabla de hechos mediante un mecanismo incremental basado en eliminación y reinserción de registros dentro del rango procesado.

    • Tabla destino: cat_master_alpura.sch_silver_layer.as4_fact_ventas
    • Estrategia identificada: DELETE + APPEND por CveFecha

Diagrama de flujo técnico

Gobierno y trazabilidad

Se permite identificar los siguientes mecanismos de control y trazabilidad:

  • Parámetros de reproceso: w_StartDate y w_EndDate permiten acotar la ventana afectada.
  • Se crean objetos ODS intermedios que facilitan trazabilidad operacional: as4_mcterut_ODS, as4_mlispren_ODS, as4_apcxnvo_ODS, as4_nfd_ODS, as4_rutas_ODS, as4_promo_ODS, as4_alpsigin_ODS y stg_ventas_ODS.
  • La tabla final se actualiza por eliminación y reinserción del rango, lo que simplifica re-procesos controlados.
  • No se observó en el DBC lógica explícita de bitácora, auditoría técnica o notificación de fallo.

Consideraciones técnicas

  1. El proceso depende de la disponibilidad de las fuentes transaccionales AS400 utilizadas para construir las corrientes NFD y APCXNVO.
  2. La ejecución requiere la correcta configuración de los parámetros de entrada mediante widgets.
  3. El procesamiento genera objetos ODS intermedios y dimensiones auxiliares utilizados durante la construcción de la fact de ventas.
  4. La consolidación de la información se realiza mediante la homologación previa de ambas corrientes transaccionales.
  5. La actualización de la tabla as4_fact_ventas se encuentra acotada al rango de fechas definido en los parámetros de ejecución.
  6. La carga final utiliza una estrategia incremental basada en eliminación y reinserción de registros para el periodo reprocesado.
Consideraciones

La construcción de la tabla as4_fact_ventas requiere la integración de múltiples objetos ODS, dimensiones auxiliares y dimensiones consumidas por el proceso. La información resultante se consolida en stg_ventas_ODS antes de ser persistida mediante una carga incremental sobre el rango de fechas procesado.

Artefactos relacionados

ArtefactoDescripción
Diseño Funcional - Ventas_BrutasDocumenta la arquitectura funcional, componentes y dependencias del proceso.
Fuentes - Ventas_BrutasDocumenta las fuentes de información consumidos por el proceso.
Operación - Ventas_BrutasDescribe los controles operativos y actividades de soporte del proceso.
Pipelines - Ventas_BrutasDescribe la secuencia de ejecución y procesamiento de datos.
Reglas de Negocio - Ventas_BrutasDescribe las reglas apliacadas durante la conformación de la dimensión.
Tablas - Ventas_BrutasDocumenta las tablas origen, intermedias y destino involucradas.
Validaciones - Ventas_BrutasDocumenta controles y validaciones asociados al proceso.

Próximos pasos

No se identifican próximos pasos específicos dentro del alcance de este documento.