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.
He importado la tabla Order de SQL a PowerBI
Tabla de pedidos tiene datos como a continuación.
ID OrderNo CustomerNo OrderDate 1 DC001 1001 2020-06-01 1 DC002 1002 2020-06-09 1 DC003 1003 2020-06-10
Nota: Quiero ejecutar a continuación la consulta en PowerBI DAX
Seleccione Count(Distinct CustomerNo) de [order] donde orderdate > '2020-06-08' y orderdate <' '2020-06-14' y CustomerNo Not in (seleccione CustomerNo from [order] donde orderdate < '2020-06-08')
He intentado el código de abajo en DAX
MEDIDA NO EN EL VOLUMEN DE LA UNIDAD DE ÍNDICE DE VARList ('Order','Order'[OrderDate] > [RangeFromDate]),"Distict", DISTINCT ('Pedido'[CustomerNo])) RETURN SUMMARIZE ( FILTER('Order', NOT ('Order'[CustomerNo]) IN indexList), "Count",DISTINCTCOUNT( 'Order'[CustomerNo] ) )
Nota: [RangeFromDate] es MEASURE cargar dinámicamente desde la fecha de la segmentación.
Pero no trabajo para mí. Amablemente Ayúdame a resolver esto en PowerBI DAX
Recibí el error siguiente cuando paso más listas de valores en NOT IN Filter.
Mensaje de error:
MdxScript(Model) (13, 83) Error de cálculo en la medida 'Order'[MEASURE NOT IN]: se proporcionó una tabla de varios valores donde se esperaba un único valor.
Hola @Srinivasan_e
¿Puede compartir su expresión DAX?
MEDIDA NO EN EL NÚMERO DE MEDIDAS DE LA UNIDAD DE MEDIDA DE
VAR indexList ?
SELECTCOLUMNS
( FILTER('CompareOrder','CompareOrder'[OrderDate] > [RangeFromDate]),
"Distict", DISTINCT ('CompareOrder'[CustomerNo]))
RESUMEN DE DEVOLUCIONES (
FILTER('Order', NOT ('Order'[CustomerNo] IN indexList)),
"Count",DISTINCTCOUNT ( 'Order'[CustomerNo] ) )
Nota:
1. RangeFromDate tiene datos pasados desde la segmentación de datos.
2. La tabla CompareOrder no tiene una relación con otras tablas.
Hola @Srinivasan_e
Las medidas devuelven valores escalares y SUMMARIZE devuelven una tabla, pruebe lo siguiente.
MEASURE NOT IN =
VAR indexList =
CALCULATETABLE(
DISTINCT ('Order'[CustomerNo]),
FILTER( 'Order', 'Order'[OrderDate] > [RangeFromDate])
)
RETURN
COUNTROWS(
EXCEPT(
DISTINCTCOUNT( 'Order'[CustomerNo] ),
indexList
)
)
Hola
Ejecutar en SQL Server:
seleccione Count(Distinct OrderNo) From [order] where OrderDate <'2020-06-28'
Resultado
-------
1194
Ejecutar en DAX:
Pedido total ?
CALCULATE(DISTINCTCOUNT('Order'[OrderNo]),FILTER('Order','Order'[OrderDate]-[RangeToDate]))
Resultado
-------
20
* [RangeToDate] se pasa dinámicamente desde Slicer (he cambiado el formato de fecha [dd-mm-aaaa] seleccionando la medida).
¿Por qué el resultado difiere en SQL Server y DAX??
Referencias
Hola @Srinivasan_e
probar la siguiente
NOT 'Order'[CustomerNo] IN indexList
O
NOT ( 'Order'[CustomerNo] IN indexList )
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 |
---|---|
2 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |