Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.
Hola chicos, tengo datos como este:
Compañía | Categoría | Subcategoría | Nombre del producto | ventas |
ACOMP | VÍVERES | 1 | A | 1000 |
ACOMP | VÍVERES | 1 | B | 1500 |
ACOMP | VÍVERES | 1 | C | 2000 |
ACOMP | VÍVERES | 2 | D | 3000 |
ACOMP | VENTA AL POR MENOR | 2 | E | 2000 |
ACOMP | VENTA AL POR MENOR | 2 | F | 1000 |
BCOMP | VENTA AL POR MENOR | 3 | G | 1000 |
BCOMP | VENTA AL POR MENOR | 3 | H | 5000 |
BCOMP | SERVICIO | 4 | I | 2500 |
BCOMP | SERVICIO | 4 | J | 1000 |
El caso cuando pongo la segmentación de datos basada en el nombre del producto, el valor también mantiene la SUMA del nombre del producto.
El resultado de mi expectativa, cuando pongo la segmentación de datos basada en el nombre del producto puede mostrar la SUMA del grupo en una tarjeta visual,se ve así:
Perdón por mi explicación en modo Excel, eso es para dejarlo lo suficientemente claro.
¿Alguien sabe cómo hacer este cálculo en Dax?
Gracias de antemano por su ayuda.
BR
Solved! Go to Solution.
Hay @tian
Creo que es necesario crear una tabla de nombres de producto no relacionada. A continuación, cree una segmentación de datos junto a esta tabla y cree medidas.
Product Name = VALUES('Table'[Product Name])
Códigos de medida:
% Sub-Category =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _SubCategory =
CALCULATE (
MAX ( 'Table'[Sub-Category] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Sub-Category] = _SubCategory )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
% Category =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _Category =
CALCULATE (
MAX ( 'Table'[Category] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Category] = _Category )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
% Company =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _Company =
CALCULATE (
MAX ( 'Table'[Company] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Company] = _Company )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
El resultado es el siguiente.
Saludos
Rico Zhou
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
Hay @tian
Creo que es necesario crear una tabla de nombres de producto no relacionada. A continuación, cree una segmentación de datos junto a esta tabla y cree medidas.
Product Name = VALUES('Table'[Product Name])
Códigos de medida:
% Sub-Category =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _SubCategory =
CALCULATE (
MAX ( 'Table'[Sub-Category] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Sub-Category] = _SubCategory )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
% Category =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _Category =
CALCULATE (
MAX ( 'Table'[Category] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Category] = _Category )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
% Company =
VAR _SelectProductName =
SELECTEDVALUE ( 'Product Name'[Product Name] )
VAR _Company =
CALCULATE (
MAX ( 'Table'[Company] ),
FILTER ( ALL ( 'Table' ), 'Table'[Product Name] = _SelectProductName )
)
VAR _SalesbyGroup =
CALCULATE (
SUM ( 'Table'[sales] ),
FILTER ( ALL ( 'Table' ), 'Table'[Company] = _Company )
)
VAR _Total =
CALCULATE ( SUM ( 'Table'[sales] ), ALL ( 'Table' ) )
RETURN
DIVIDE ( _SalesbyGroup, _Total )
El resultado es el siguiente.
Saludos
Rico Zhou
Si esta publicación ayuda, considere Aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente.
@tian , basado en lo que obtuve
measure = divide(sum(Table[Sales]), calculate(sum(Table[Sales]), all(Table)))
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 |