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
Syndicate_Admin
Administrator
Administrator

Medida avanzada: clientes de Canadá que no han comprado un determinado producto entre marzo y mayo

Hola a todos,
Estoy tratando de crear una medida que filtre solo a los usuarios de Canadá que no hayan comprado el artículo "CA6001" entre los meses de marzo de 2024 y mayo de 2024.
Las tablas incluidas son las siguientes:
Dimension_period que tendría el período FY, como 202403 para marzo y 202405 para mayo
Dimension_Market que tendrían las regiones como Canadá, etc.
Dimension_Customer que tendría el nombre del cliente.
Dimension_item que tendría el código de artículo como "CA6001".
He intentado una medida a continuación, pero sin éxito. Lo tengo pegado a continuación para su referencia.
Todas las relaciones también son correctas, como poer mi captura de pantalla.
Si alguien pudiera mostrarme una medida correcta que funcionaría en su lugar y tal vez decirme la mejor manera de ingresarla en una visualización, sería muy apreciado 🙂
¡Gracias de antemano!
Clientes de Canadá que no han comprado 19AU1000 =
FUERON TodosCanadáClientes =
CALCULABLETABLE (
VALORES ( 'Cliente de la dimensión'[descripción] ),
'Mercado de dimensiones'[mercado] = "PUEDE"
)
FUERON CompradoCA6001Clientes =
CALCULABLETABLE (
VALORES ( 'Cliente de la dimensión'[descripción] ),
'Elemento de dimensión'[artículo] = "CA6001",
'Período de dimensión'[fyperiod] >= FECHA ( 2024, 3, 1 ) &&
'Período de dimensión'[fyperiod] <= FECHA ( 2024, 5, 31 )
)
FUERON ClientesQueCompraronCA6001InPeriod =
CRUZAR(TodosCanadáClientes, CompradoCA6001Clientes)
FUERON ClientesQueCompraronCA6001 =
CALCULABLETABLE (
VALORES ( 'Cliente de la dimensión'[descripción] ),
'Elemento de dimensión'[artículo] = "CA6001"
)
FUERON ClientesQueNoComprarCA6001 =
EXCEPTUAR(TodosCanadáClientes, ClientesQueCompraronCA6001)
DEVOLUCIÓN
EXCEPTUAR(ClientesQueNoComprarCA6001, ClientesQueCompraronCA6001InPeriod)
gbarr12345_0-1714951152250.png

7 REPLIES 7
Syndicate_Admin
Administrator
Administrator

El primer argumento de SUMMARIZE es una tabla. La cantidad es irrelevante (suponiendo que la presencia de un registro en la tabla de hechos indique que se realizó una venta).

La cantidad también se muestra como un error rojo.

Me pregunto si hay un código alternativo o algo para solucionar esto.

Todas las tablas de mi modelo de datos también tienen relaciones correctas.

gbarr12345_0-1714967655787.png

Syndicate_Admin
Administrator
Administrator

Sí, se necesita algún tipo de tabla de datos para identificar si un cliente compró el artículo en el rango de tiempo (de lo contrario, no tiene la información). Normalmente, se trataría de algún tipo de tabla de ventas con claves para la dimensión del cliente, la dimensión de fecha y la dimensión del artículo.

Cuando introduzco la tabla que tiene la cifra de ventas, aparece un error rojo.

¿Cuál es la mejor manera de solucionar esto?

Lo siento, soy nuevo en Power BI, así que no estoy seguro de algunas cosas.

gbarr12345_1-1714963820321.png

Syndicate_Admin
Administrator
Administrator

Pruebe esto:

VAR Meses = TREATAS({202403, 202404, 202405}, Dimension_period[FYperiod])
VAR Producto = TREATAS({"CA6001"}, Dimension_item[item])
VAR Canadá = TREATAS({"PUEDE"}, Dimension_market[mercado])
VAR CanadianCustomersWhoBought =
CALCULATETABLE(
RESUMIR(Ventas, Dimension_customer[descripción]),
Meses, Producto, Canadá, ALL()
)
VAR TodosCanadiensesClientes =
CALCULATETABLE(
RESUMIR(Ventas, Dimension_customer[descripción]),
Canadá, TODOS()
)
VAR CanadianCustomersWhoDidnNotBuy = EXCEPT(AllCanadianCustomers, CanadianCustomersWhoBought)
VAR CurrentCustomer = SELECTEDVALUE(Dimension_customer[description])
DEVOLUCIÓN
INTERRUPTOR(
TRUE(),
CurrentCustomer IN CanadianCustomersWhoBought, "Cliente canadiense que compró",
CurrentCustomer IN CanadianCustomersWhoDidnNotBuy, "Cliente canadiense que no compró",
"Cliente no canadiense"
)

Gracias por la respuesta.

No tengo una tabla de ventas en mis datos. Tengo una tabla llamada 'Módulo Ventas con inventario' que tiene un campo de cantidad.

¿Necesito poner algo más en lugar de ventas?

gbarr12345_0-1714962938779.png

Syndicate_Admin
Administrator
Administrator

He incluido a continuación datos de muestra y el resultado esperado también a continuación aquí si eso ayudaría:

gbarr12345_0-1714953858874.png

Helpful resources

Announcements
RTI Forums Carousel3

New forum boards available in Real-Time Intelligence.

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

MayPowerBICarousel

Power BI Monthly Update - May 2024

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

LearnSurvey

Fabric certifications survey

Certification feedback opportunity for the community.