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
He visto otras publicaciones con respecto a las columnas de índice basadas en dos columnas, pero no he podido encontrar una solución a mi problema.
Tengo una tabla DAX con dos colomns de fecha (y algunas otras columnas pero no son importantes en este asunto)
Una columna de fecha es la fecha de compra y la otra columna es la fecha de venta.
Me gustaría una columna de índice que se vea algo como esto:
Fecha de compra | fecha de venta | Índice |
Septiembre 2020 | agosto 2020 | 1 |
Septiembre 2020 | septiembre 2020 | 2 |
Septiembre 2020 | octubre 2020 | 3 |
Septiembre 2020 | noviembre 2020 | 4 |
Septiembre 2020 | diciembre 2020 | 5 |
Septiembre 2020 | enero 2021 | 6 |
Septiembre 2020 | febrero 2021 | 7 |
Septiembre 2020 | Marzo 2021 | 8 |
Septiembre 2020 | abril 2021 | 9 |
Septiembre 2020 | mayo 2021 | 10 |
Septiembre 2020 | junio 2021 | 11 |
Septiembre 2020 | julio 2021 | 12 |
Septiembre 2020 | agosto 2021 | 13 |
Septiembre 2020 | septiembre 2021 | 14 |
Octubre 2020 | octubre 2020 | 15 |
Octubre 2020 | noviembre 2020 | 16 |
Octubre 2020 | diciembre 2020 | 17 |
Octubre 2020 | enero 2021 | 18 |
Octubre 2020 | febrero 2021 | 19 |
La lógica es que el mes de compra debe ser el índice primario y luego el mes de ventas. El índice tiene que ser continuo. Mis datos no se ordenan de esta manera continua, que es el problema al que me enfrento. Y sí, a veces la fecha de venta es anterior a la fecha de compra (no pregunte por qué).
Espero que alguien pueda ayudarme a resolver este problema. La solución tiene que ser una columna DAX calculada.
Gracias de antemano.
Solved! Go to Solution.
Esto se hace más fácilmente en el editor de consultas, pero como usted declaró que necesita una columna DAX, esta parece funcionar. Deberá reemplazar Index con el nombre de la tabla real.
NewIndex =
VAR vThisValue =
INT ( CONVERT ( Index[Fecha de compra], DATETIME ) )
+ INT ( CONVERT ( Index[fecha de venta], DATETIME ) / 100000
VAR vAdd =
ADDCOLUMNS (
Índice
"cValue",
INT ( CONVERT ( Index[Fecha de compra], DATETIME ) )
+ INT ( CONVERT ( Index[fecha de venta], DATETIME ) / 100000
)
DEVOLUCIÓN
RANKX ( vAdd, [cValue], vThisValue, ASC )
Tenga en cuenta que necesitaba usar varios pasos reemplazar valores en el editor de consultas para cambiar los nombres de los meses a mi configuración regional (por ejemplo, oktober, marts, februrary).
Palmadita
Esto se hace más fácilmente en el editor de consultas, pero como usted declaró que necesita una columna DAX, esta parece funcionar. Deberá reemplazar Index con el nombre de la tabla real.
NewIndex =
VAR vThisValue =
INT ( CONVERT ( Index[Fecha de compra], DATETIME ) )
+ INT ( CONVERT ( Index[fecha de venta], DATETIME ) / 100000
VAR vAdd =
ADDCOLUMNS (
Índice
"cValue",
INT ( CONVERT ( Index[Fecha de compra], DATETIME ) )
+ INT ( CONVERT ( Index[fecha de venta], DATETIME ) / 100000
)
DEVOLUCIÓN
RANKX ( vAdd, [cValue], vThisValue, ASC )
Tenga en cuenta que necesitaba usar varios pasos reemplazar valores en el editor de consultas para cambiar los nombres de los meses a mi configuración regional (por ejemplo, oktober, marts, februrary).
Palmadita
¡Muchas gracias, su solución funcionó!
@skanord , Supongamos que son columnas de tipo de fecha. Una nueva columna
countx(filter(Table, [Fecha de compra] <= anterior([Fecha de compra]) && [Fecha de venta] <= anterior([fecha de venta]) ),[fecha de venta]) ),[fecha de venta])
Sí, son columnas de tipo de fecha.
Probé su fórmula DAX, pero obtengo valores duplicados.
Mi resultado se ve así
Fecha de compra | Fecha de venta | índice |
junio 2020 | junio 2020 | 1 |
junio 2020 | julio 2020 | 2 |
julio 2020 | junio 2020 | 2 |
junio 2020 | agosto 2020 | 3 |
agosto 2020 | junio 2020 | 3 |
junio 2020 | septiembre 2020 | 4 |
enero 2021 | junio 2020 | 4 |
julio 2020 | julio 2020 | 4 |
junio 2020 | octubre 2020 | 5 |
Marzo 2021 | junio 2020 | 5 |
agosto 2020 | julio 2020 | 6 |
junio 2020 | noviembre 2020 | 6 |
abril 2021 | junio 2020 | 6 |
julio 2020 | agosto 2020 | 6 |
junio 2020 | diciembre 2020 | 7 |
julio 2021 | junio 2020 | 7 |
septiembre 2020 | julio 2020 | 7 |
junio 2020 | enero 2021 | 8 |
julio 2020 | septiembre 2020 | 8 |
junio 2020 | febrero 2021 | 9 |
agosto 2020 | agosto 2020 | 9 |
enero 2021 | julio 2020 | 9 |
julio 2020 | octubre 2020 | 10 |
junio 2020 | Marzo 2021 | 10 |
septiembre 2020 | agosto 2020 | 11 |
Marzo 2021 | julio 2020 | 11 |
junio 2020 | abril 2021 | 11 |
octubre 2020 | agosto 2020 | 12 |
julio 2020 | noviembre 2020 | 12 |
junio 2020 | Mayo 2021 | 12 |
agosto 2020 | septiembre 2020 | 12 |
junio 2020 | junio 2021 | 13 |
abril 2021 | julio 2020 | 13 |
noviembre 2020 | agosto 2020 | 13 |
julio 2020 | diciembre 2020 | 14 |
junio 2020 | julio 2021 | 14 |
agosto 2020 | octubre 2020 | 15 |
junio 2020 | agosto 2021 | 15 |
julio 2021 | julio 2020 | 15 |
septiembre 2020 | septiembre 2020 | 15 |
enero 2021 | agosto 2020 | 16 |
junio 2020 | septiembre 2021 | 16 |
julio 2020 | enero 2021 | 16 |
@skanord , en ese caso agregar una columna de índice en power query
https://stackoverflow.com/questions/45715963/creating-an-index-column-for-power-bi
¿Cómo puedo hacer eso cuando se trata de una tabla calculada por dax?
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 | |
1 | |
1 | |
1 | |
1 |
User | Count |
---|---|
2 | |
2 | |
2 | |
2 | |
1 |