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

The Power BI DataViz World Championships are on! With four chances to enter, you could win a spot in the LIVE Grand Finale in Las Vegas. Show off your skills.

Reply
Syndicate_Admin
Administrator
Administrator

Convertir una columna calculada en medida pero problema con la iteración

Tengo este DAX como una columna calculada que calcula los ingresos netos por fila. Hay dos ajustes que deben hacerse, que son el tipo de cambio de moneda (ya que no todos los pedidos están en USD) y la tasa de crédito (suposición sobre cuántos pedidos se devolverán).

El tipo de cambio se basa en una tabla con valores por día para AUD, GBP y EUR.

La tasa de crédito solo se aplica a los pedidos en el año fiscal actual.

Todo funciona sin problemas, pero en busca de una ligera ganancia de eficiencia y aprendizaje, he estado tratando de convertir esta columna calculada en una medida. Desafortunadamente, me he quedado atascado con un problema de iteración y no puedo encontrar el enfoque correcto. ¿Puede alguien ayudarme y señalarme la dirección correcta?

¡Gracias de antemano!

Bien

David

NetRevenue = 
VAR RevenueAfterTax = 'Order Header'[TotalPaymentReceived] - 'Order Header'[TotalTax]
VAR ExchangeRate =
    LOOKUPVALUE (
        'Currency Exchange'[Rate],
        'Currency Exchange'[Date], 'Order Header'[OrderDate],
        'Currency Exchange'[Exchange], SWITCH (
            TRUE (),
            'Order Header'[Currency] = "AUD", "AUD_to_USD",
            'Order Header'[Currency] = "GBP", "GBP_to_USD",
            'Order Header'[Currency] = "EUR", "EUR_to_USD"
        ),
        1
    )
VAR CreditRate =
    IF (
        RELATED ( 'Calendar'[Year Fiscal] ) IN {"FY 2022"},    
        LOOKUPVALUE (
            'Sales Adjustments'[Credit Rate],
            'Sales Adjustments'[Brand Code], 'Order Header'[Brand]
        ),
        0
    )
RETURN
    ( RevenueAfterTax * ExchangeRate ) * ( 1 - CreditRate )

1 REPLY 1
Syndicate_Admin
Administrator
Administrator

@dyabes , Intente mover este calc a la parte de expresión de sumx

NetRevenue =
sumx('encabezado de pedido',

VAR RevenueAfterTax = 'Order Header'[TotalPaymentReceived] - 'Order Header'[TotalTax]
Tipo de cambio VAR =
LOOKUPVALUE (
«cambio de divisas»[tipo],
'Cambio de divisas'[Fecha], 'Encabezado del pedido' [FechaPedido],
'Cambio de divisas'[Cambio], SWITCH (
VERDADERO (),
'Encabezado del pedido'[Moneda] = "AUD", "AUD_to_USD",
'Encabezado del pedido'[Moneda] = "GBP", "GBP_to_USD",
'Encabezado del pedido'[Moneda] = "EUR", "EUR_to_USD"
),
1
)
VAR CreditRate =
SI (
RELACIONADO ( 'Calendario' [Año fiscal] ) EN {"FY 2022"},
LOOKUPVALUE (
«Ajustes de ventas» [Tasa de crédito],
'Ajustes de ventas'[Código de marca], 'Encabezado de pedido'[Marca]
),
0
)
DEVOLUCIÓN
( IngresosAfterTax * Tipo de Cambio ) * ( 1 - CreditRate ) )

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

FebPBI_Carousel

Power BI Monthly Update - February 2025

Check out the February 2025 Power BI update to learn about new features.

Feb2025 NL Carousel

Fabric Community Update - February 2025

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

Top Solution Authors
Top Kudoed Authors