Cómo construir un sencillo modelo de datos financiero

A la hora de afrontar un nuevo proyecto BI, siempre encontramos ciertos hechos, dimensiones y métricas que se repiten en todos ellos, con independencia del tipo de negocio, el tamaño de la empresa y las particularidades de la gestión.

Dentro de los distintos departamentos que componen una compañía, la información del departamento financiero es la que reúne mayor similitud entre todas las empresas.

De hecho, tan solo hace falta el diario contable y el plan de cuentas para construir una información económico-financiera completa y con máxima granularidad. Si a esto le añadimos la relación de efectos deudores y acreedores en cartera, podremos obtener una previsión de cash-flow.

En el diario contable hay un conjunto de campos comunes en toda empresa, que serán necesarios y suficientes para nuestros objetivos. Estos son:

  • Fecha contable del asiento (preferiblemente en formato numérico o formato ISO AAAAMMDD)
  • Número de asiento
  • Número de apunte
  • Cuenta contable
  • Descripción del asiento (a valorar su inclusión en función del volumen de datos)
  • Importe deudor
  • Importe acreedor

Podríamos encontrar ligeras diferencias en la estructura y disposición de la información. Por ejemplo, disponer de un campo Importe único, combinado con otro campo que defina si el importe es deudor (D) o acreedor (C).

Por otro lado, cabría la opción de encontrar un diario contable normalizado en dos tablas, donde la primera contenga Fecha Contable y Número de asiento, mientras la segunda tabla recoge el resto de campos que componen el asiento, junto con el campo Número de Asiento, que actuaría como Primary Key (PK) uniendo ambas tablas. Si nos topamos con esta disposición, desnormalizaríamos ambas tablas para obtener una única tabla: la tabla de hechos de nuestro modelo de datos en formato estrella.

Además, es muy probable que la empresa mantenga una contabilidad analítica por proyectos o departamentos. En este caso, deberemos añadir los respectivos campos a las tablas comentadas, así como contar en nuestro modelo de datos con las tablas maestras de proyectos y departamentos. Ello nos derivaría a un modelo de datos en formato copo de nieve.

El plan de cuentas definirá la estructura visual de nuestra información contable. Su transformación y adaptación a un modelo de datos tabular o multidimensional puede conllevar más pasos de los descritos en el caso del diario contable, pero no será por ello más complicado. El objetivo final será obtener una tabla que contenga al menos los siguientes campos:

  • Cuenta contable (actuará como PK)
  • Descripción Cuenta
  • Nivel 1 (definirá si la cuenta es de Balance o de Pérdidas y Ganancias)
  • Nivel 2 (definirá si la cuenta es de Activo, Neto Patrimonial, Pasivo o Resultados)
  • Nivel 3 (definirá el Grupo Contable al que la cuenta pertenece)
  • Nivel 4 (definirá el Epígrafe al que la cuenta pertenece)
  • Nivel 5 y siguientes, definirán las subclasificaciones de cada cuenta hasta llegar al nivel previo a la cuenta contable.

Pero con esto no sería suficiente. Para evitar problemas posteriores al visualizar la información, es más que aconsejable añadir un nuevo campo por cada Nivel (que podremos llamar Orden 1, Orden 2, etc), donde definamos con valores numéricos el orden deseado de los valores contenidos en su campo asociado. Nos apoyaremos en ellos para establecer una clasificación lógica por Nivel, evitando la ordenación alfabética.

Ya solo nos queda añadir una tabla que no debe faltar en todo modelo de datos: la tabla de dimensión Tiempo. En esta tabla serán imprescindibles campos como:

  • Fecha (formato fecha)
  • Fecha_ISO (AAAAMMDD)
  • Año (numérico)
  • Ejercicio (coincidirá con el valor Año si el ejercicio es natural)
  • Mes# (numérico)
  • Mes_largo (Nombre completo)
  • Mes_corto (Nombre abreviado. Ej.: Sep.)
  • Trimestre (alfanumérico)
  • Semana (numérico)

Estos campos estarán condicionados al Ejercicio fiscal aplicado por la empresa.

Por último, es importante recalcar que el modelo de datos descrito seria fácilmente escalable si precisásemos consolidar varias empresas dentro del mismo. En el caso de trabajar con distintos planes contables, necesitaríamos aplicar un mapping de cuentas en la fase de transformación de datos.

A falta de retoques finales, estaríamos en disposición de conectar todas las tablas y obtener un modelo de datos que reúna información estructurada, lista para ser analizada mediante los visuales y funcionalidades que nos ofrece cualquier herramienta BI (Power BI, Tableau, Qlik…)

Adolfo Espinosa Cuartero
Finance Business Partner en Restaurant Brands Iberia (Burger King - Popeyes - Tim Hortons)
Docente del MBA Executive de Escuela de Negocios FEDA