Columna de cálculo de % de margen

Un usuario Pregunto ✅

corlín

Hola,
Soy nuevo aquí, pero me preguntaba si alguien podría orientarme en la dirección correcta sobre cómo realizar un cálculo de% de margen. Obviamente tengo dos columnas «Ventas» y «Costo». Un cálculo simple es =(Ventas-Coste)/Ventas. Cuando ingreso esta fórmula en una nueva columna y selecciono el formato de porcentaje en el escritorio de Power BI, ¡el cálculo está muy lejos! Aquí hay algunos números de ejemplo:

Ventas: 3.610.000

Costo: 2,100,000
Neto: 1.510.000
% de margen esperado: 41.82

Devuelto real: 103.600,13 %

Cualquier ayuda sería muy apreciada.

mejor // disco

andré

No crearía el % de margen calc como una columna, debe crearlo como una medida y luego no tiene que preocuparse por cómo se agrega el % de margen, que es lo que puede estar viendo cuando sus números están apagados.

Además, debe usar la función DIVIDE() para asegurarse de que no se vea afectado por los ceros

https://msdn.microsoft.com/en-us/library/jj677276.aspx

entonces el cálculo debería ser algo como esto:

% de margen = DIVIDE(SUMA(mitabla[revenue]) – Sum(mitabla[cost]), Sum(mitabla[Revenue]))

andré

No crearía el % de margen calc como una columna, debe crearlo como una medida y luego no tiene que preocuparse por cómo se agrega el % de margen, que es lo que puede estar viendo cuando sus números están apagados.

Además, debe usar la función DIVIDE() para asegurarse de que no se vea afectado por los ceros

https://msdn.microsoft.com/en-us/library/jj677276.aspx

entonces el cálculo debería ser algo como esto:

% de margen = DIVIDE(SUMA(mitabla[revenue]) – Sum(mitabla[cost]), Sum(mitabla[Revenue]))

PolloColegio

En respuesta a andré

Entonces, si todavía tengo un problema en el que las columnas Ventas y Costo de la tabla DB son correctas, pero la medida de margen que usa el operador DIVIDE () aún arroja un valor anómalo, debería sospechar de mi modelo, ¿verdad?

Versión de julio PBI, SS 2016 SP2

El modelo son dos tablas GLItemLevel y DaxDates con uno a muchos desde la tabla de fechas hasta ItemLevel.

En SSMS obtengo un margen correcto en SQL, pero en Power BI obtengo lo siguiente

Mis valores de columna:

Costo de Ventas

98 -70 Entonces el Margen debería ser 29.2%

Cosas que probé y algunas funcionaron y otras no.

Columna de margen = SI ([Total Sales] = 0, 0, ([Total Sales] + [Total Cost] ) / [Total Sales])
Resultado: Esto resultó en un error de referencia circular.

MarginColumn = DIVIDE(SUM(ItemLevel[Sales Amount]) – SUMA (Nivel de artículo[Cost]), suma (nivel de elemento[Sales Amount]))
Resultado: -134 ¡Muy lejos!

Esta columna funcionó
% de margen = SI ([Total Sales] = 0, 0, ([Total Sales] + [Total Cost] ) / [Total Sales])
Resultado: 29,2% ¡Correcto!

Esta columna no funcionó.
Margen = DIVIDIR (SUMA (Nivel de artículo[Sales Amount]) – SUMA (Nivel de artículo[Cost]), suma (nivel de elemento[Sales Amount]))
Resultado: -13362.9% ¡Muy lejos!

Esta medida no funcionó:
Margen de medida = DIVIDIR ((SUMA (Nivel de elemento)[Sales Amount]) – SUMA (Nivel de artículo[Cost])), SUMA (Nivel de artículo[Sales Amount]))
Resultado: 1,71 ¡Muy lejos!

Esta Medida funcionó:
% de margen de medida = IF (SUMA (Nivel de elemento)[Sales Amount]) = 0, 0, (SUMA(NivelElemento[Sales Amount]) + SUMA (Nivel de elemento[Cost])) / SUMA (Nivel de artículo[Sales Amount])) * 100
Resultado: 29,18% ¡Correcto!
Así que estoy confundido. ¿El problema está en el modelo o en la forma en que funciona el cálculo de nivel de fila en DAX?

corlín

En respuesta a andré

Eso funcionó a las mil maravillas. Ahora, para comprender por qué Microsoft recomienda columnas frente a medidas en esta capacidad.

¡Muchas gracias!

// CD

andré

En respuesta a corlín

Si es nuevo en el modelado con Power BI, puede que desee seguir este tutorial. Si enmarca algunos conceptos básicos que te pueden resultar útiles

http://businessintelligist.com/2014/11/21/tutorial-how-to-create-a-star-schema-model-in-power-bi-and…

greg_deckler

Usé la siguiente fórmula con el % activado y estuvo bien:

GM = (ventas[Sales] – Ventas[Cost]) / Ventas[Sales]

Esto estaba usando Power BI Desktop y agregando una nueva columna. ¿Insertó una columna o una medida?

Lo probé con las columnas Ventas y Costo siendo números enteros, números decimales, texto y moneda y el cálculo fue correcto cada vez.

corlín

En respuesta a greg_deckler

Hola,

Gracias por la respuesta. He comprobado, [Total] y [Total Cost] las columnas se establecen en el tipo de datos ‘Número decimal’ con Formato establecido en ‘Moneda’. Cuando agrego una nueva columna para GM% nuevamente, el Tipo de datos se establece en ‘Número decimal’ y el Formato se establece en ‘Porcentaje’.

Incluí una captura de pantalla en mi fórmula, solo oculté la fuente de datos por privacidad.

https://www.evernote.com/shard/s101/sh/fa88aabc-7987-44a1-8332-83dc9933122d/a7005287056a1553e3c21931…

Deja un comentario

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