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

Grow your Fabric skills and prepare for the DP-600 certification exam by completing the latest Microsoft Fabric challenge.

Reply
Syndicate_Admin
Administrator
Administrator

Asigne descuentos en función de las unidades reales vendidas

Hola a todos,

Busco apoyo para resolver un problema de negocio relacionado con la asignación del descuento correcto a un cliente en función del objetivo de unidades vendidas preestablecido. Ejemplo: si el cliente compró 30 unidades, aplicamos un descuento del 3%, 40 unidades, 4%, etc.

Mi modelo:

Tengo una tabla "Rápeles" con 3 columnas, client_id, descuento, objetivo de unidad vendida. En esta tabla, la columna client_id no tiene valores únicos debido al hecho de que hay varios objetivos y varios descuentos. El número de objetivos no es fijo, por lo que un cliente puede tener 3 líneas y otras 10 líneas en la tabla "Rápeles". Tengo otra tabla "Partner" que contiene client_id únicos que filtran la tabla "Rappels". "Orden de venta" es mi tabla de datos que contiene datos de transacciones y client_id y está filtrada por socio. Si quiero la unidad vendida por el cliente en la tabla "Rappels" tengo que usar la función Treatas en el client_id.

Mi problema es que quiero asignar el descuento correcto a aplicar en función de la unidad comprada en el año 2023.
Ejemplo, el cliente 12345 tiene una unidad comprada 568, los objetivos y descuentos son: 300 = 2%, 400 = 3%, 500 = 4%, 600 = 5%, 700 = 6%. ¿Cómo puedo utilizar DAX para devolver el descuento aplicable que será el del rango 500-600? Recuerde que el objetivo no es fijo, un cliente puede tener un objetivo a partir de 40 unidades.

¡Gracias!

3 REPLIES 3
Syndicate_Admin
Administrator
Administrator

Hola @_GianmaBI46,

¿Puedes probar esto, por favor?

1. Calcular el total de unidades vendidas en 2023

Units Sold 2023 = 
CALCULATE(
    SUM('Sale order'[Units Sold]), 
    'Sale order'[Year] = 2023
)

2. Determinar el descuento aplicable

Applicable Discount = 
VAR ClientID = SELECTEDVALUE('Partner'[client_id])
VAR UnitsSold2023 = [Units Sold 2023]
RETURN
    MAXX(
        FILTER(
            'Rappels',
            'Rappels'[client_id] = ClientID &&
            'Rappels'[Unit sold target] <= UnitsSold2023
        ),
        'Rappels'[discount]
    )

Hola Sahir,

Su solución funciona, pero todavía tengo un par de problemas:

1) A nivel total, la fórmula no se está sumando correctamente

2) Si pongo columnas de la tabla de Rappels, la fórmula devuelve un valor para cada nivel de "consumo", que es el "objetivo de unidades vendidas".

_GianmaBI46_1-1710156733881.png

¿Cómo podemos modificar?

Punto 1) para que sea addicitve?

Punto 2) ¿Hacer que la fórmula de descuento aplicable devuelva un valor solo cuando las unidades '23 sean superiores al descuento en la línea?

Gracias

Hola Sahir,

Gracias por la solución sugerida, funciona perfectamente.

Se me había ocurrido lo siguiente:

GM de descuento aplicable =

FUERON ID de cliente = SELECTEDVALUE('Socio'[ID Socio])
FUERON Devoluciones de llamadasForClient = FILTRO('Recordatorios', 'Recordatorios'[partner_id] = VALOR(ID de cliente))

-- Calcular el descuento aplicable
FUERON AplicableDescuento =
CALCULAR(
MÁXIMO('Recordatorios'[descuento]),
FILTRO(
Devoluciones de llamadasForClient,
'Recordatorios'[consumo] <= [unidades 12M '23 GM Rappels]
)
)

DEVOLUCIÓN
AplicableDescuento

Mi fórmula funciona pero no es adictiva, mientras que la tuya suma en el nivel total.
¿Sería tan amable de dar una breve explicación de por qué?

Gracias
Gianmarco

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

Ask questions in Eventhouse and KQL, Eventstream, and Reflex.

MayPowerBICarousel1

Power BI Monthly Update - May 2024

Check out the May 2024 Power BI update to learn about new features.

Top Solution Authors
Top Kudoed Authors