Clasificación ABC Dinámica. Paso a paso vs DAX Pattern de SQLBI

 In DAX Avanzado, Destacado, Power Bi

Clasificación ABC Dinámica.

 

 

 

La clasificación ABC de clientes o de productos es un indicador muy importante para desarrollar nuestra labor de gestión de control. En el siguiente vídeo aprenderemos paso a paso como llegar a clasificar las ventas por clientes dentro del ABC, creando la tabla de clasificación y los cálculos necesarios para realizarla, obteniendo el % acumulado de ventas a partir del cual se realiza la clasificación.

En el vídeo, lo explicamos a través de fórmulas como RANKX y TOPN para obtener las ventas acumuladas por cliente en sentido descendente, desde el que más nos compra al que menos, capital para la realización de la clasificación.

Pero finalmente nos decantamos por el uso de la fórmula del DAX Pattern por motivos de rendimiento. La formula del DAX PATTERN utiliza tablas virtuales y un sólo cálculo que nos devuelve el resultado infinitamente más rápido que nuestros cálculos paso a paso.

La fórmula del DAX PATTERN es la siguiente:

Ventas Clientes ABC =

CALCULATE (    [MedidaVentas];    VALUES ( DimClientes[IdDimCliente] ); FILTER ( CALCULATETABLE ( ADDCOLUMNS ( ADDCOLUMNS ( VALUES(DimClientes[IdDimCliente]); «ValorVentasOut»; [MedidaVentasVentas] ); «PorcentajeAcumulado»; DIVIDE ( SUMX ( FILTER ( ADDCOLUMNS ( VALUES ( DimClientes[IdDimCliente]); «ValorVentasIn»; [Ventas] ); [ValorVentasIn] >= [ValorVentasOut] ); [ValorVentasIn] ); CALCULATE ( [Ventas]; VALUES ( DimClientes[IdDimCliente] ) ) ) ); ALL (DimClientes) );        [PorcentajeAcumulado] > [MinimoInferior]            && [PorcentajeAcumulado] <= [MaximoSuperior]    ))

 

Esta fórmula la podéis encontrar explicada, en inglés, en la página de los dax pattern:  https://www.daxpatterns.com/abc-classification-dynamic/

 

 

 

Recommended Posts
Showing 4 comments
  • Ricardo
    Responder

    Hola Francisco,
    Una consulta

  • Ricardo
    Responder

    Hola Francisco, he aplicado mis ganancias (CGP total) vs CGPabc, no son iguales hay campos vacíos deben ser por que tengo importes negativos, en tu ejemplo todos son positivos.
    como modificar el dax y pueda completar, adjunto imagen.

    https://jumpshare.com/v/BwxFE8yEQZ7NagAtFIbM

    gracias

  • Ricardo
    Responder

    Hola Francisco, el Dax de tu ejemplo ventas ABC no me resulta por que mi columna de ventas tengo importes negativos como modificarlo para que me acepte los negativos.
    Gracias

  • Alberto Herrera
    Responder

    Hola Francisco,
    muy interesante el artículo.
    Pero lo he reproducido 3 veces, de las 2 maneras que explicas y el problema que siempre me sucede es cada cliente me aparece con clasificación A y C a la vez. Es decir, se duplica.
    ¿Alguna solución?

Leave a Comment

Al continuar utilizando nuestro sitio web, usted acepta el uso de cookies. Más información

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra POLÍTICA DE COOKIES, pinche el enlace para mayor información. Además puede consultar nuestro AVISO LEGAL y nuestra página de POLÍTICA DE PRIVACIDAD.

Cerrar