Columna de distribución ponderada

Un usuario Pregunto ✅

9G

Hola,

Necesito calcular la Suma de Ventas para todos los Clientes donde se vendió un producto específico. EX.:

Tengo una tabla de matriz, con los productos como filas y necesito las ventas totales, la suma de las ventas para todos los clientes donde se vendió un producto específico y el % de distribución ponderada como columnas.

He calculado las Ventas Totales pero ahora necesito la otra variable «Suma de Ventas para todos los Clientes donde se vendió un producto específico» para poder calcular la Cobertura Ponderada.

El modelo de datos consta de 2 tablas:

1. Datos de ventas: con fecha, nombre del cliente, nombre de la marca, cantidad

2. Nombre de marca: con nombre de marca, convención de nomenclatura

El campo clave de la relación es Nombre de marca.

Como filtro tengo la fecha y la marca.

Gracias.

En respuesta a 9G

hola @9G

Simplemente ajuste la fórmula de la siguiente manera:

All products QTY at Clients where P was sold 2 = 
var _allclients=VALUES('Sales Table'[Client ]) 
Return
CALCULATE(SUM('Sales Table'[Qty]),FILTER(ALLEXCEPT('Sales Table','Sales Table'[Date]),'Sales Table'[Client ] in _allclients))

Saludos,

Lin

9G

@amitchandak @harshnathani @v-lili6-msft

Formato de tabla de datos de ventas:

Fecha Cliente Producto Cantidad
21/08/2020 C1 P3 0.1
22/08/2020 C2 P1 0.3
23/08/2020 C3 P2 0.89
24/8/2020 C4 P3 0.94
25/8/2020 C5 P1 0.4
26/8/2020 C6 P2 0.1
27/8/2020 C7 P1 0.6
28/8/2020 C8 P3 0.7

Formato de tabla de nombre de marca:

Producto Convenio de denominación
P1 Producto 1
P2 Producto 2
P3 Producto 3

A continuación puede ver los resultados esperados:

Clientela P Cant. Todos los productos QTY en Todos los clientes Todos los productos QTY en Clientes donde se vendió P Distribución ponderada
P1 2837 2.6 63.77 55.82 88%
P2 2893 2.37 63.77 55.06 86%
P3 1820 1.24 63.77 46.24 73%

Ya tengo las columnas»Clientes, P Qty, Todos los productos QTY en Todos los clientes». Ahora solo necesito la «CANTIDAD de todos los productos en los Clientes donde se vendió P» y una vez que la tenga, puedo calcular la Distribución ponderada dividiendo: «La CANTIDAD de todos los productos en los Clientes donde se vendió P» https://community.powerbi. com/»CANTIDAD DE TODOS LOS PRODUCTOS EN TODOS LOS CLIENTES» = «Distribución ponderada»

Gracias por adelantado.

En respuesta a 9G

hola @9G

Basándonos en sus datos de muestra, no pudimos saber cómo calcular [All products QTY at Clients where P was sold]

7.JPG

y creo que si solo usas esta fórmula:

CANTIDAD de todos los productos en Clientes donde se vendió P = CALCULAR (SUMA (Ventas[Qty]))
por favor comparta más datos de muestra para esto.
Saludos,
Lin

9G

En respuesta a v-lili6-msft

@v-lili6-msft Gracias por su respuesta.

Tabla 1:

Cliente Producto Cantidad
C1 P3 0.1
C2 P1 0.3
C3 P2 0.89
C4 P3 0.94
C1 P1 0.4
C2 P2 0.1
C3 P1 0.6
C4 P3

0.7

Tabla 2:

Producto Convenio de denominación
P1 Producto 1
P2 Producto 2
P3 Producto 3

Los resultados, basados ​​en conjuntos de datos, son:

Clientela P Cant. Todos los productos QTY en Todos los clientes Todos los productos QTY en Clientes donde se vendió P Distribución ponderada
P1 3 1.3 4.03 2.39 59%
P2 2 0.99 4.03 1.89 47%
P3 2 1.74 4.03 2.14 53%

Aprecio tu ayuda.

En respuesta a 9G

hola @9G

Simplemente cree una medida como se muestra a continuación:

All products QTY at Clients where P was sold = 
var _allclients=VALUES('Table 1'[Client ]) return
CALCULATE(SUM('Table 1'[Qty]),FILTER(ALL('Table 1'), 'Table 1'[Client ] in _allclients))

All products QTY at All Clients = CALCULATE(SUM('Table 1'[Qty]),ALL('Table 2'))
Weighted Distribution = DIVIDE([All products QTY at Clients where P was sold],[All products QTY at All Clients])

Resultado:

3.JPG

y aquí hay un archivo pbix de muestra, pruébelo.

Saludos,

Lin

9G

En respuesta a v-lili6-msft

@v-lili6-msft gracias por tu sugerencia. Parece estar cerca, pero no funciona para mi ejemplo. He jugado, tratando de «adaptar» la fórmula, pero me falta algo. Supongo que tiene que ver con los filtros que tengo (Fecha y Producto)

Adjunté archivos xlsx y .pbix aquí (https://gofile.io/d/qx4AlR). No tengo opción para adjuntar los archivos al hilo, lo siento.

En respuesta a 9G

hola @9G

Simplemente ajuste la fórmula de la siguiente manera:

All products QTY at Clients where P was sold 2 = 
var _allclients=VALUES('Sales Table'[Client ]) 
Return
CALCULATE(SUM('Sales Table'[Qty]),FILTER(ALLEXCEPT('Sales Table','Sales Table'[Date]),'Sales Table'[Client ] in _allclients))

Saludos,

Lin

hola @9G

es posible que deba usar la función ALLxxxx a su medida para obtenerlo.

https://www.sqlbi.com/articles/managing-all-functions-in-dax-all-allselected-allnoblankrow-allexcept…

si no es su caso, comparta su archivo pbix de muestra y el resultado esperado, eso será de gran ayuda.

Consulte esta publicación sobre cómo obtener una respuesta rápida a su pregunta:
https://community.powerbi.com/t5/Community-Blog/How-to-Get-Your-Question-Answered-Quickly/ba-p/38490

Saludos,

Lin

amichandak

@9G, ¿puede compartir datos de muestra y resultados de muestra en formato de tabla?

nathani

Hola @9G,

Comparta datos de muestra y resultados esperados en formato de texto.

Saludos,
Nathani duro
¿Respondí tu pregunta? ¡Marca mi publicación como una solución! Agradecer con un Kudos!! (Haga clic en el botón Me gusta)

Deja un comentario

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