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.
Hola.
Consulte la siguiente tabla de ejemplo.
Userid | PurchaseDate |
000001 | 2020-07-01 |
000001 | 2020-07-12 |
000001 | 2020-08-05 |
000001 | 2020-08-21 |
000002 | 2020-07-09 |
000002 | 2020-08-06 |
000002 | 2020-08-15 |
000002 | 2020-08-25 |
En primer lugar, agregamos la fila de PurchaseDateNo. a la tabla y numerar cada UserID y PurchaseDate como se muestra a continuación.
Userid | PurchaseDate | PurchaseDateNo. |
000001 | 2020-07-01 | 1 |
000001 | 2020-07-12 | 2 |
000001 | 2020-08-05 | 3 |
000001 | 2020-08-21 | 4 |
000002 | 2020-07-09 | 1 |
000002 | 2020-08-06 | 2 |
000002 | 2020-08-15 | 3 |
000002 | 2020-08-25 | 4 |
Luego, si filtramos las fechas de la línea de julio de cada UserID y dejamos las fechas de agosto tal como están,
también nos gusta volver a numerar cada UserID y PurchaseDate como se muestra a continuación.
Userid | PurchaseDate | PurchaseDateNo. |
000001 | 2020-08-05 | 1 |
000001 | 2020-08-21 | 2 |
000002 | 2020-08-06 | 1 |
000002 | 2020-08-15 | 2 |
000002 | 2020-08-25 | 3 |
Sin embargo, no pudimos volver a numerar correctamente después de cambiar PurchaseDate.
Su consejo y cualquier solución sería muy apreciada.
Gracias.
Solved! Go to Solution.
Hola @Smitu30
Si desea tener una ordenación dinámica, debe crear una medida y utilizar la función Rankx.
Construyo una mesa como la tuya para hacerme una prueba.
Medida:
Measure = RANKX(FILTER(ALLSELECTED('Table'),'Table'[UserID]=MAX('Table'[UserID])),CALCULATE(MAX('Table'[PurchaseDate])),,ASC)
El resultado es el siguiente.
Predeterminado:
Fecha del filtro>-2020/8/1:
La función max en el filtro volverá a un valor de valor en la fila actual. Por lo tanto, el filtro volverá a una tabla cuyos valores sean todos iguales a la fila actual.
Por ejemplo: Filter(Table,'Table'[UserID]-MAX('Table'[UserID])), IF current row's UserID ? 1, por lo que volverá a la tabla como se muestra a continuación y calculará el rango de 'Table'[PurchaseDate] en esta tabla. Y puede consultar el blog como se muestra a continuación para obtener más información sobre el filtro de contexto y el filtro de filas.
Para más información:
row-context-and-filter-context-in-dax
Puede descargar el archivo pbix desde este enlace: Cómo numerar dinámicamente UserID y PurchaseDate
Saludos
Rico Zhou
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
@Smitu30 , Pruebe una medida como
calculate(distinctcount(Table[PurchaseDate]), filter( allselected(Table),Table[UserID] ?max(Table[UserID]) && Table[PurchaseDate] <-max(Table[PurchaseDate])))
O
Calculate(count(Table[PurchaseDate]), filter( allselected(Table),Table[UserID] ?max(Table[UserID]) && Table[PurchaseDate] <-max(Table[PurchaseDate])))
Hola.
Hola @Smitu30
Si desea tener una ordenación dinámica, debe crear una medida y utilizar la función Rankx.
Construyo una mesa como la tuya para hacerme una prueba.
Medida:
Measure = RANKX(FILTER(ALLSELECTED('Table'),'Table'[UserID]=MAX('Table'[UserID])),CALCULATE(MAX('Table'[PurchaseDate])),,ASC)
El resultado es el siguiente.
Predeterminado:
Fecha del filtro>-2020/8/1:
La función max en el filtro volverá a un valor de valor en la fila actual. Por lo tanto, el filtro volverá a una tabla cuyos valores sean todos iguales a la fila actual.
Por ejemplo: Filter(Table,'Table'[UserID]-MAX('Table'[UserID])), IF current row's UserID ? 1, por lo que volverá a la tabla como se muestra a continuación y calculará el rango de 'Table'[PurchaseDate] en esta tabla. Y puede consultar el blog como se muestra a continuación para obtener más información sobre el filtro de contexto y el filtro de filas.
Para más información:
row-context-and-filter-context-in-dax
Puede descargar el archivo pbix desde este enlace: Cómo numerar dinámicamente UserID y PurchaseDate
Saludos
Rico Zhou
Si este post ayuda,entonces considere Aceptarlo como la solución para ayudar a los otros miembros a encontrarlo más rápidamente.
Hola.
Ahora, estoy todo despejado.
Muchas gracias por su amable consejo y explicación.
@Smitu30 ¿Puede explicarme la lógica de la renumeración? Tienes 2 1. Pero, en general, parece que necesita una medida RANX.
https://community.powerbi.com/t5/Quick-Measures-Gallery/To-Bleep-with-RANKX/m-p/1042520#M452
Fecha de clasificación.
Covering the world! 9:00-10:30 AM Sydney, 4:00-5:30 PM CET (Paris/Berlin), 7:00-8:30 PM Mexico City
Check out the April 2024 Power BI update to learn about new features.
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |