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

Earn the coveted Fabric Analytics Engineer certification. 100% off your exam for a limited time only!

Reply
SonyT01
Regular Visitor

Cómo escribir una medida IF cuando se utilizan diferentes períodos de tiempo

Hola

Por favor, ¿puede alguien mostrarme cómo escribir la siguiente medida IF.

Tengo un ejemplo en el que he creado una tabla en Power BI que es similar a la siguiente. He calculado un campo 'YTD' y un campo 'YTD' Mar 20. La tabla tiene una segmentación de fecha que selecciona agosto de 2020.

Me gustaría crear la 3a columna de la tabla para que parezca 'YTD New'. Sin embargo, parece que no puedo resolver esto. La lógica de la medida que quiero es:

YTD Nuevo - Si Nombre - "Efectivo" y luego 'YTD Mar 20' de lo contrario 'YTD'

NombreYTDYTD Mar 20YTD Nuevo
Recibos de clientes400350400
Pagos a proveedores300250300
Intereses pagados502550
Efectivo1004040

Las otras 2 columnas se calculan por:

Medida:
YTD Mar 2020 - CALCULATE(SUM('Table1'[Balance]),DATESBETWEEN(
Fecha[Fecha],
FECHA(2020,3,1),
FECHA(2020,3,31)
)
)

Columna calculada:

YTD á ('Tabla1'[Débito YTD] - 'Tabla1'[Crédito YTD])
Espero que esto sea alcanzable de alguna manera.
3 ACCEPTED SOLUTIONS
DataInsights
Super User
Super User

@SonyT01,

Pruebe esta medida:

YTD New = IF ( MAX ( Table1[Name] ) = "Cash", [YTD Mar 2020], MAX ( Table1[YTD] ) )





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




View solution in original post

v-yuaj-msft
Community Support
Community Support

Hola @SonyT01 ,

De acuerdo con su descripción y mi experiencia anterior, supongo que parece mezclar medidas y columnas calculadas. No cumple las reglas de definición de las funciones DAX.

Este error puede producirse cuando una fórmula de medida hace referencia a una columna que contiene muchos valores sin especificar una agregación como min, max, count o sum para obtener un único resultado.

Resultado:

v-yuaj-msft_0-1604025209007.png

Creo que puede modificar la medida "YTD NEW" apropiadamente de la siguiente manera.

YTD NUEVO ?

var min_value-MIN('Tabla 1'[Nombre])

devolución

SI(

min_value "efectivo",

'Tabla 1'[YTD Mar 2020],

MIN('Tabla 1'[YTD])

)

Resultado:

v-yuaj-msft_1-1604025209010.png

Espero que mi sugerencia pueda ayudarte.

Saludos

Yuna

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

View solution in original post

¡¡Muchas gracias!! He estado tratando de resolver esto sin éxito. Esto ha logrado el resultado que buscaba.

¡Muchas gracias de nuevo!

View solution in original post

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Gracias por su ayuda. Funcionó bien para cada categoría, pero no para la cantidad total.

Estaba tratando de calcular un % de logro para cada categoría, pero el porcentaje total de logro solo suma cada categoría, no calcula la cantidad correcta.


¿Sabes cómo puedo solucionarlo?

v-yuaj-msft
Community Support
Community Support

Hola @SonyT01 ,

De acuerdo con su descripción y mi experiencia anterior, supongo que parece mezclar medidas y columnas calculadas. No cumple las reglas de definición de las funciones DAX.

Este error puede producirse cuando una fórmula de medida hace referencia a una columna que contiene muchos valores sin especificar una agregación como min, max, count o sum para obtener un único resultado.

Resultado:

v-yuaj-msft_0-1604025209007.png

Creo que puede modificar la medida "YTD NEW" apropiadamente de la siguiente manera.

YTD NUEVO ?

var min_value-MIN('Tabla 1'[Nombre])

devolución

SI(

min_value "efectivo",

'Tabla 1'[YTD Mar 2020],

MIN('Tabla 1'[YTD])

)

Resultado:

v-yuaj-msft_1-1604025209010.png

Espero que mi sugerencia pueda ayudarte.

Saludos

Yuna

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

¡¡Muchas gracias!! He estado tratando de resolver esto sin éxito. Esto ha logrado el resultado que buscaba.

¡Muchas gracias de nuevo!

DataInsights
Super User
Super User

@SonyT01,

Pruebe esta medida:

YTD New = IF ( MAX ( Table1[Name] ) = "Cash", [YTD Mar 2020], MAX ( Table1[YTD] ) )





Did I answer your question? Mark my post as a solution!

Proud to be a Super User!




Helpful resources

Announcements
April AMA free

Microsoft Fabric AMA Livestream

Join us Tuesday, April 09, 9:00 – 10:00 AM PST for a live, expert-led Q&A session on all things Microsoft Fabric!

March Fabric Community Update

Fabric Community Update - March 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors