Optimización de medidas: análisis de márgenes

Un usuario Pregunto ✅

Fischelsr01

@ Vera_33 Tengo otro :-).

Necesito ayuda con múltiples cortes de margen y esos cortes % de los ingresos totales.

En esencia, tenemos tres tipos de ofertas:

1. Interno

2. Subcontratado

3. Combinación

A través de 6 medidas, necesito saber los márgenes y el porcentaje de los ingresos totales que componen cada uno de estos cubos.

Pude resolver la lógica en Tipo de estimación lo que me da las 3 banderas. Ahora estoy teniendo dificultades para tratar de encontrar la mejor manera de dividirlos en las 6 medidas mencionadas anteriormente.

He creado tres muestras de lo que estoy buscando. Ellos son Margen interno, ingresos internos, y InHouseBook. Ingresos internos y InhouseReservar están dando los resultados esperados. Margen interno no es. Debería devolver un valor de -91%.

Siéntase libre de sugerir un mejor camino para estos. Me parece que hay muchos cálculos de suma redundantes que ocurren en lo que serán las 6 medidas.

Archivo PBIX: https://drive.google.com/file/d/1yxISUan6KIdk6nVKMUuKQTSGSLo80IYF/view?usp=sharing
Datos de muestra: https://drive.google.com/file/d/1Uu53QZFkrziBEdoLzORoY__dWnFJlnsj/view?usp=sharing

¡Gracias por adelantado!

Vera_33

En respuesta a Fischelsr01

Hola @Fischelsr01

Tomó un poco de tiempo revisar sus medidas. El -3045% vino con una pequeña modificación en los originales, todo el Costo total estimado, solo necesita agregar todo el costo, pero no la iteración (significa que no hay SUMX).

¿El% de margen se compara con el costo total y no con los ingresos?

Vera_33_0-1622858566452.png

InHouseMargins =

VAR T1 =
    GENERATE (
        GROUPBY ( SalesHistory, SalesHistory[SO] ),
        VAR EstimateType = [EstimateType]
        VAR TotalRevenue = [SumTotalRevenue]
        VAR TotalCost = [EstimatedTotalCost]
        RETURN
            ROW (
                "EstType", EstimateType,
                "TotalRevenue", TotalRevenue,
                "TotalCost", TotalCost
            )
    )
VAR T2 =
    FILTER ( T1, [EstType] = "In-House" )
RETURN
    ( SUMX ( T2, [TotalRevenue] ) - SUMX ( T2, [TotalCost] ) )
        / SUMX ( T2, [TotalCost] )

Básicamente, reescribí algunas de sus medidas. Debería haber mejores formas, pero verifiqué el rendimiento de la mía en DAX Studio, todo parece estar bien. PM su correo electrónico, puedo enviarle el archivo .pbix.

Hola @Fischelsr01,

¿Te ayudaron las sugerencias de Vera_33 con tu escenario? si ese es el caso, puede considerar Kudo o aceptar la sugerencia útil para ayudar a otros que enfrentaron requisitos similares a encontrarlo más rápidamente.

Si esto tampoco ayuda, comparta información más detallada para ayudarnos a aclarar su escenario para probar.

Cómo obtener una respuesta rápida a su pregunta

Saludos,

Xiaoxin-sheng

Vera_33

Hola @Fischelsr01

Estoy un poco perdido… como volver [InHouseMargin] = -91%. Veamos algunos detalles:

1) sus datos están al nivel de SO, es posible que tenga varias entradas para el mismo SO, por lo que necesita agregación? Basado en datos de muestra, tiene 1 SO que tiene 2 entradas… avíseme si la suposición es incorrecta

2) ¿Usará esas medidas (SUM) en diferentes visuales, como si necesita contar, diferenciar el tipo y calcular otros?

3) entonces esto Margen interno, necesita filtrar el tipo = interno, luego calcular el porcentaje? Obtuve algo muy lejos de -91% con los datos de muestra

Vera_33_0-1622700567177.png

Fischelsr01

En respuesta a Vera_33

@Vera_33 .

1) sus datos están al nivel de SO, es posible que tenga varias entradas para el mismo SO, por lo que necesita agregación? Basado en datos de muestra, tiene 1 SO que tiene 2 entradas… avíseme si la suposición es incorrecta

Sí, es necesario sumar los Ingresos y los Costos totales para determinar el margen. No nos preocupemos por los duplicados en este caso.

2) ¿Usará esas medidas (SUM) en diferentes visuales, como si necesita contar, diferenciar el tipo y calcular otros?

Sí, utilizo las medidas SUM en varias medidas. Si es posible, ¿podemos configurar las medidas para que solo calculemos las columnas de la tabla (ingresos, costo de material, costo de mano de obra, subcosto, etc.) una vez y luego tener las medidas individuales (márgenes internos, submárgenes, etc.) de esos cálculos. El rendimiento es clave para el resultado.

3) entonces esto Margen interno, necesita filtrar el tipo = interno, luego calcular el porcentaje? Obtuve algo muy lejos de -91% con los datos de muestra

Lo que describiste es lo que estaba tratando de lograr y no lo lograba.

-91% no es correcto (no estoy seguro de dónde obtuve ese número…) El resultado anterior de -3045% es correcto.

Mi mayor preocupación es cuando tomo todas nuestras líneas de datos y empiezo a ejecutar estas medidas que se requieren demasiados cálculos, lo que atasca la herramienta y la vuelve inútil. Solicité a mis equipos de TI que suelten una columna calculada para Tipo de estimación, pero no he recibido una línea de tiempo para eso. Esta es mi siguiente mejor opción (creo).

¡Gracias, de nuevo, por toda su ayuda!

Vera_33

En respuesta a Fischelsr01

Hola @Fischelsr01

Tomó un poco de tiempo revisar sus medidas. El -3045% vino con una pequeña modificación en los originales, todo el Costo total estimado, solo necesita agregar todo el costo, pero no la iteración (significa que no hay SUMX).

¿El% de margen se compara con el costo total y no con los ingresos?

Vera_33_0-1622858566452.png

InHouseMargins =

VAR T1 =
    GENERATE (
        GROUPBY ( SalesHistory, SalesHistory[SO] ),
        VAR EstimateType = [EstimateType]
        VAR TotalRevenue = [SumTotalRevenue]
        VAR TotalCost = [EstimatedTotalCost]
        RETURN
            ROW (
                "EstType", EstimateType,
                "TotalRevenue", TotalRevenue,
                "TotalCost", TotalCost
            )
    )
VAR T2 =
    FILTER ( T1, [EstType] = "In-House" )
RETURN
    ( SUMX ( T2, [TotalRevenue] ) - SUMX ( T2, [TotalCost] ) )
        / SUMX ( T2, [TotalCost] )

Básicamente, reescribí algunas de sus medidas. Debería haber mejores formas, pero verifiqué el rendimiento de la mía en DAX Studio, todo parece estar bien. PM su correo electrónico, puedo enviarle el archivo .pbix.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *