Microsoft Fabric Community Conference 2025, March 31 - April 2, Las Vegas, Nevada. Use code MSCUST for a $150 discount.
Register nowThe 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.
Hola a todos,
Necesito sumar una forma acumulativa que se detendrá en algún momento y restablecer la suma:
Ejemplo:
Id. de productopedir repetir nueva columna *
Producto A 1 0
Producto B 1 0
Producto A 2 1 1
Producto A 3 1 2
Producto C 3 0
Producto C 4 1 1
Producto A 5 0
Producto A 6 1 1
Por lo tanto, si los mismos productos se repiten en el siguiente pedido de identificación, dará 1 y si se repite de nuevo, 2... Pero si en el siguiente el producto no está y se vuelve a repetir, el acumulativo se reiniciará y comenzará de nuevo.
Pruebo este pero solo generetas acumulativo por la secuencia, no sé cómo resetear:
CALCULAR(suma(m[repetir]),FILTRO(m,m[producto]=ANTERIOR(m[producto])),m[idorder] <=ANTERIOR(m[idorder]))
So if the same products repeat in the next id order
Eso es demasiado vago. ¿Querías decir "si algún producto se repite en todos los pedidos"? ¿Qué pasaría si el pedido 2 también tuviera el producto C?
No puede, el pedido de identificación no repite el producto
no es correcto, necesito crear una nueva columna * que puse allí
como dije, el requisito es demasiado vago. ¿Qué pasa si el producto C es parte de idOrder 2? ¿Cuál sería el resultado esperado?
Como dije, no sucederá porque el pedido no acepta el mismo producto
No sé qué significa eso. Tanto el pedido 1 como el 3 tienen dos productos. ¿Por qué el pedido 2 no puede tener dos productos?
Simplemente no puede ser el mismo producto, un pedido puede tener muchos productos
¿Cuál es el resultado esperado para
Productidorder
Producto A | 1 |
Producto B | 1 |
Producto A | 2 |
Producto C | 2 |
Producto A | 3 |
Producto C | 3 |
Producto C | 4 |
Producto A | 5 |
Producto A | 6 |
Id. de productoorder Nueva columna
Producto A 1 0
Producto B 1 0
Producto A 2 1
Producto C 2 0
Producto A 3 2
Producto C 3 1
Producto C 4 2
Producto A 5 0
Producto A 6 1
Hola
Esta es la fórmula del DAX que puedes utilizar:
NewColumn =
VAR CurrentProduct = m[Product]
VAR CurrentOrder = m[idorder]
VAR PreviousOrder =
CALCULATE(
MAX(m[idorder]),
FILTER(
m,
m[Product] = CurrentProduct && m[idorder] < CurrentOrder
)
)
VAR PreviousValue =
CALCULATE(
MAX(m[NewColumn]),
FILTER(
m,
m[Product] = CurrentProduct && m[idorder] = PreviousOrder
)
)
RETURN
IF(
ISBLANK(PreviousOrder),
0,
IF(
ISBLANK(PreviousValue),
1,
PreviousValue + 1
)
)
no funciona, la nueva columna aún no existe, por lo que el MAX no puede tenerla, estoy tratando de crear esta nueva columna