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

¿Tabla calculada para obtener el valor más alto más temprano?

Estoy tratando de encontrar las primeras ocurrencias del valor más alto en una columna determinada.

Aquí está el estado inicial de los datos:

ArtículoCostarFecha
a1101/01/2022
a1301/05/2022
a1101/06/2022
a1201/03/2023
a1101/07/2023
b2201/03/2021
b2301/02/2022
b2101/04/2022
b2101/07/2022
b2301/09/2022
b2101/11/2022

Como podemos ver, el artículo a1 tuvo su costo más alto el 01/05/2022.

El ítem b2 tuvo dos instancias de mayor costo, una en 01/02/2022, y la otra en 01/09/2022. Quiero capturar solo el primero.

Así que a partir de estos datos quiero obtener el siguiente resultado:

ArtículoCostarFecha
a1301/05/2022
b2301/02/2022

Hasta ahora he usado una acción de nivel de consulta, primero ordenando Fecha ascendente, luego ordenando Costo descendente antes de dedudar todo, ya que esa es una lógica que funciona en Excel. También utilicé buffer.table al ordenar para asegurarme de que todos los datos se capturaran en ambos tipos.

Pero también quiero verificar estos datos, así que estoy buscando hacer una columna calcualizada contra la versión original de esta tabla.

¿Alguien puede ayudar con cómo debería ser eso?

4 REPLIES 4
Syndicate_Admin
Administrator
Administrator

Crear una tabla temporal como

Tmp table =
ADDCOLUMNS (
    SUMMARIZE ( 'Table', 'Table'[Item], 'Table'[Date] ),
    "@num rows", CALCULATE ( COUNTROWS ( 'Table' ) )
)

Eso debería ayudarlo a identificar cualquier duplicado restante.

Syndicate_Admin
Administrator
Administrator

Como actualización, intenté deduping basado en las columnas que me estaban causando problemas, pero no ayudó.

Todavía obtengo el error anterior. ¿Alguna idea?

Syndicate_Admin
Administrator
Administrator

Solo como referencia, también necesitaba un argumento en blanco, elegí "Predeterminado".

Sin embargo, recibo un error:

A pesar de que se especifican las columnas MatchBy, se encuentran filas duplicadas en el parámetro Relation de INDEX. Esto no está permitido. La operación actual se canceló porque se produjo un error en otra operación de la transacción.

Creo que esto podría deberse a que algunos elementos pueden tener la misma fecha y calificación dos veces, intentarán deduplicar esa parte en el nivel de consulta y luego ejecutarán esto nuevamente.

Syndicate_Admin
Administrator
Administrator

Puede crear una tabla calculada como

My Table =
INDEX(
	1,
	'Table',
	ORDERBY( 'Table'[Cost], DESC, 'Table'[Date], ASC),
	PARTITIONBY( 'Table'[Item]),
	MATCHBY( 'Table'[Item], 'Table'[Date])
)

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.