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

Register now to learn Fabric in free live sessions led by the best Microsoft experts. From Apr 16 to May 9, in English and Spanish.

Reply
Grevatious
Frequent Visitor

Clasificar pedidos en función del producto

Hola a todos,

Tengo un conjunto de datos que contiene una gran cantidad de transacciones, cada uno de ellos detallado. Esto significa que hay una fila para cada producto dentro de un pedido, como esta:

OrdenNombre De Sku
1Producto A
1Producto B
2Donación A
3Producto C
3Donación B
4Donación A
4Donación B

Ahora estoy tratando de crear una columna calculada que podría ayudarme a identificar el tipo de orden como este:

OrdenNombre De SkuTipo de pedido
1Producto AVentas
1Producto BVentas
2DonaciónDonación
3Producto CMezclado
3DonaciónMezclado
4DonaciónDonación
4DonaciónDonación

He estado tratando de usar EARLIER pero sólo puedo identificar ventas y donaciones, no sé cómo identificar los pedidos que contiene tanto donaciones como productos normales.

¡¡Gracias!!

2 REPLIES 2
amitchandak
Super User
Super User

@Grevatious ,

Pruebe una nueva columna como

New column =
var _all = countx(filter(table,table[Order]=earlier(Table[Order])),table[Order])
var _sales = countx(filter(table,table[Order]=earlier(Table[Order]) && [Type of Order] = "Sales"),table[Order])
var _don = countx(filter(table,table[Order]=earlier(Table[Order]) && [Type of Order] = "Donation"),table[Order])
return
switch(true(),
_all =_sales , "Sales",
_all =_don , "Donation",
"Mixed"
)
parry2k
Super User
Super User

@Grevatious Por lo general, en escenarios como este tiene una tabla de productos con un registro único y tiene relación con las ventas, y esa tabla de productos tendrá un tipo de producto como Donatoins o Sales

De todos modos, agregue las siguientes dos columnas de la tabla y debería funcionar.

Type = IF ( CONTAINSSTRING( 'Table'[Sku Name], "Donation" ), "Donation", "Sales" )


Order Type = 
VAR __c = CALCULATETABLE( VALUES ( 'Table'[Type] ), ALLEXCEPT('Table', 'Table'[Order] ) ) 
RETURN
SWITCH ( TRUE(),
    COUNTROWS( __c ) > 1, "Mixed",
    __c
) 

La primera columna es obtener el tipo del producto, si esta información está en la tabla de productos, entonces se puede utilizar desde allí.

Apreciaría Kudos 🙂 si mi solución me ayudara.



Subscribe to the @PowerBIHowTo YT channel for an upcoming video on List and Record functions in Power Query!!

Learn Power BI and Fabric - subscribe to our YT channel - Click here: @PowerBIHowTo

If my solution proved useful, I'd be delighted to receive Kudos. When you put effort into asking a question, it's equally thoughtful to acknowledge and give Kudos to the individual who helped you solve the problem. It's a small gesture that shows appreciation and encouragement! ❤


Did I answer your question? Mark my post as a solution. Proud to be a Super User! Appreciate your Kudos 🙂
Feel free to email me with any of your BI needs.

Helpful resources

Announcements
Microsoft Fabric Learn Together

Microsoft Fabric Learn Together

Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City

PBI_APRIL_CAROUSEL1

Power BI Monthly Update - April 2024

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

April Fabric Community Update

Fabric Community Update - April 2024

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