Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Earn a 50% discount on the DP-600 certification exam by completing the Fabric 30 Days to Learn It challenge.

Reply
dscott73
Resolver I
Resolver I

Calcular SUMA de medida

Esta pregunta parece hacerse muchas veces, sin embargo, ninguna de las soluciones parece funcionar muy bien, por lo que publicar aquí.

Tengo una medida llamada "Días tarde" Da dinámicamente la diferencia en días entre ShipDate de una fila y la fecha de la segmentación.

Días tarde =
var AsOf á CALCULATE(MAX('dim Date'[ActualDate]), ALLSELECTED('dim Date'[ActualDate]) )
var ReqShipDate á CALCULATE(MAX('fact SalesLineView'[RequestedShippingDate]))
var Days - DATEDIFF(ReqShipDate, AsOf,DAY)
devolución
Días


Por supuesto, el total es incorrecto. Aquí hay una pequeña muestra de captura de pantalla:
2020-09-09_20-34-34.jpg
La SUMA para la columna "Días tardíos" debe ser 15, he probado varias versiones de SUMX con VALUES, he intentado SUMMERIZE pensando que me daría una "instantánea" de la tabla y luego sumar la columna pero eso tampoco funcionó.
SalesOrderNo procede de una tabla Dimension, LINENUM procede de la tabla Fact. Las otras columnas son todas medidas.

actualizar:

Probé algunas de las diversas sugerencias sin resultados. Aquí está el vínculo al archivo de Power BI.

Archivo de Power BI de ejemplo

1 ACCEPTED SOLUTION

@dscott73 Vea a continuación:

Days Late SUMMERIZE = 
var AsOf = MAX('dim Date'[Date])
var Days = 
    SUMX(
        ADDCOLUMNS(
            SUMMARIZE('fact SalesLine','fact SalesLine'[SalesOrderNo],'fact SalesLine'[RequestedShippingDate], "_AsOf", AsOf,"_Req",MAX('fact SalesLine'[RequestedShippingDate])),
            "_Days",([_AsOf] - [_Req]) * 1.
        ),[_Days])
RETURN 
Days

Este es el libro de texto Medidas problema total https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/td-p/547907


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

6 REPLIES 6
amitchandak
Super User
Super User

@dscott73 , Para mí me parece gran problema total

si esto puede ayudar a

Días tardíos ?
var AsOf á CALCULATE(MAX('dim Date'[ActualDate]), ALLSELECTED('dim Date'[ActualDate]) )
var ReqShipDate á CALCULATE(MAX('fact SalesLineView'[RequestedShippingDate]))
var Days á Sumx( Values(Table[SalesorderNo]),DATEDIFF(ReqShipDate, AsOf,DAY))
devolución
Días

///Or
Días tardíos ?
var AsOf á CALCULATE(MAX('dim Date'[ActualDate]), ALLSELECTED('dim Date'[ActualDate]) )
var ReqShipDate á CALCULATE(MAX('fact SalesLineView'[RequestedShippingDate]))
var Days á Sumx( Summarize(Table, Table[SalesorderNo], Table[Line no],"_1",DATEDIFF(ReqShipDate, AsOf,DAY)),[_1])
devolución
Días

Cambios en negrita

Hola @amitchandak, gracias por la ayuda. Intenté ambos, y no parecen funcionar del todo.

Este es un archivo de Power BI de ejemplo con el que trabajar.

@dscott73 Vea a continuación:

Days Late SUMMERIZE = 
var AsOf = MAX('dim Date'[Date])
var Days = 
    SUMX(
        ADDCOLUMNS(
            SUMMARIZE('fact SalesLine','fact SalesLine'[SalesOrderNo],'fact SalesLine'[RequestedShippingDate], "_AsOf", AsOf,"_Req",MAX('fact SalesLine'[RequestedShippingDate])),
            "_Days",([_AsOf] - [_Req]) * 1.
        ),[_Days])
RETURN 
Days

Este es el libro de texto Medidas problema total https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/td-p/547907


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

No estoy seguro de entender todo el Voo-Doo DAX allí, pero funciona!

¡Gracias!

Greg_Deckler
Super User
Super User

@dscott73 Bueno, canon en esto es Esto parece un problema de totales de medida. Muy común. Vea mi post al respecto aquí: https://community.powerbi.com/t5/DAX-Commands-and-Tips/Dealing-with-Measure-Totals/td-p/63376

Además, esta Medida Rápida, Medir Totales, La Palabra Final debe obtener lo que necesita:
https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907

Pero probablemente ya has leído eso. Debe ser SUMMARIZE o ADDCOLUMNS(GROUPBY(...) ...) por SalesOrderNo y LINENUM y tacking la medida en el extremo y luego SUMX.

¿Quizás tu ALLSELECTED está causando problemas?

Esto también puede ayudar: esto parece un problema de agregación de medida. Vea mi artículo de blog sobre eso aquí: https://community.powerbi.com/t5/Community-Blog/Design-Pattern-Groups-and-Super-Groups/ba-p/138149

El patrón es:
MinScoreMeasure ? MINX ( SUMMARIZE ( Tabla, Tabla[Grupo] , "Medida",[SuMeasure] ), [Medida])
MaxScoreMeasure ? MAXX ( SUMMARIZE ( Tabla, Tabla[Grupo] , "Medida",[SuMeasure] ), [Medida])
AvgScoreMeasure - AVERAGEX ( SUMMARIZE ( Tabla, Tabla[Grupo] , "Medida",[SuMeasure] ), [Medida])
etcetera.

De lo contrario, necesitará datos de muestra para probar.


@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
The Definitive Guide to Power Query (M)

DAX is easy, CALCULATE makes DAX hard...

Hola @Greg_Deckler, no estoy seguro de lo que estoy haciendo mal, pero estos métodos no parecen funcionar.

Este es un archivo de Power BI de ejemplo.

Helpful resources

Announcements
LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.