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

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Anonymous
Not applicable

Cálculo diferente para la misma columna

Hola

Tengo una mesa como se muestra en la foto 1. "Costo" e "Ingresos" son mis Indicadores Clave de Desempeño (KPI). Quiero crear una tabla visual para mostrar los KPI mensuales. Compruebe la tabla para la salida deseada. En la columna de valor quiero mostrar el valor del mes más reciente para "Ingresos" (celda: B2) que en este caso será 170 como Ingresos para marzo de 2020 es 170. Sin embargo, en la columna de valor de "Coste" (celda: B3), quiero mostrar el costo promedio de YTD. Para marzo de 2020 será (100+120+130)/3 a 116,67. A medida que llega un nuevo mes, la columna C debe actualizarse a abril de 2020, mayo de 2020 y así sucesivamente. ¿Puedes ayudarme con esto?

(Los números de fila y las letras de columna no son necesarios en el objeto visual. Acabo de añadir para facilitar la explicación del problema)

¡Gracias de antemano!

Table.PNGpic 1: entrada

ABC
1KpiValorPeríodo
2Ingresos Marzo de 2020
3Costo Marzo de 2020
1 ACCEPTED SOLUTION
V-pazhen-msft
Community Support
Community Support

@Shukurovasif

Pruebe las dos medidas y colóquelas en una tabla visual con [KPI]. Si no funcionan, debe cambiar el tipo de datos de la columna [Período] de Texto ("Enero 2020") a Fecha como "2020/1/1", para que pueda usar DAX para encontrar la fecha más reciente.

Latest Period = LASTDATE('Table'[Period])

Result Value = 
var Cost_ = CALCULATE(AVERAGE('Table'[Value]),DATESYTD('Table'[Period]),FILTER('Table','Table'[KPI]="Cost"))
var Revenue_ = CALCULATE(MAX('Table'[Value]),FILTER('Table','Table'[Period]=MAX('Table'[Period])),'Table'[KPI]="Revenue")

Return SWITCH(MAX('Table'[KPI]),
"Revenue",Revenue_,"Cost", Cost_)

Result value.JPG

Paul Zheng
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

View solution in original post

6 REPLIES 6
V-pazhen-msft
Community Support
Community Support

@Shukurovasif

Pruebe las dos medidas y colóquelas en una tabla visual con [KPI]. Si no funcionan, debe cambiar el tipo de datos de la columna [Período] de Texto ("Enero 2020") a Fecha como "2020/1/1", para que pueda usar DAX para encontrar la fecha más reciente.

Latest Period = LASTDATE('Table'[Period])

Result Value = 
var Cost_ = CALCULATE(AVERAGE('Table'[Value]),DATESYTD('Table'[Period]),FILTER('Table','Table'[KPI]="Cost"))
var Revenue_ = CALCULATE(MAX('Table'[Value]),FILTER('Table','Table'[Period]=MAX('Table'[Period])),'Table'[KPI]="Revenue")

Return SWITCH(MAX('Table'[KPI]),
"Revenue",Revenue_,"Cost", Cost_)

Result value.JPG

Paul Zheng
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

Anonymous
Not applicable

Hola @V-pazhen-msft,

Eso funciona perfecto. ¡Muchas gracias!

@Shukurovasif

Puede utilizar FORMAT() para configurarlo parcialmente, por ejemplo.FORMAT(delivery_precision,"Porcentaje")).

Something como este:

var Cost_ = CALCULATE(AVERAGE('Table'[Value]),DATESYTD('Table'[Period]),FILTER('Table','Table'[KPI]="Cost"))
var Revenue_ = CALCULATE(MAX('Table'[Value]),FILTER('Table','Table'[Period]=MAX('Table'[Period])),'Table'[KPI]="Revenue")
var delivery_precision= CALCULATE(AVERAGE('Table'[Value]),DATESYTD('Table'[Period]),FILTER('Table','Table'[KPI]="delivery precision"))

Return SWITCH(MAX('Table'[KPI]),
"Revenue",Revenue_,"Cost", Cost_,"delivery precision",FORMAT(delivery_precision,"Percent"))

También puede encontrar otros formatos aquí si es necesario: https://docs.microsoft.com/en-us/dax/pre-defined-numeric-formats-for-the-format-function

Paul Zheng
Si este post ayuda, por favor considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.

dethompson97
Resolver III
Resolver III

¡Hola! Soy nuevo en esto, pero pensé en desafiarme a mí mismo y probarlo. Aquí está mi solución. Para hacer esto, es necesario escribir una medida que cambie el contexto del filtro para que sólo esté mirando el último mes (si entendí la pregunta claramente)

DAX Question.jpg

¡Espero que esto ayude!

Dawn Thompson

PD: Si esta solución funciona, márquela como una solución para ayudar a otros. Los felicitaciones también son agradables.

Lo siento por el error ortográfico no capturado. Debería decir LastPeriod no LastPersion

Anonymous
Not applicable

Hola @dethompson97,

Gracias por su respuesta. Necesito el promedio de YTD para el costo y el último mes para los ingresos. Por favor, compruebe la respuesta de V-pazhen-msft.

Helpful resources

Announcements
September Hackathon Carousel

Microsoft Fabric & AI Learning Hackathon

Learn from experts, get hands-on experience, and win awesome prizes.

Top Solution Authors