cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
qgturismo
Helper I
Helper I

CALCULAR la comparación de columnas con diferentes números de filas

Hola a todos, ¿alguien podría ayudarme, por favor?

Tengo dos mesas:

TABLA1: venda_cotacao

TABLA2:BI_EXP

En TABLE1(venda_cotacao) me gustaría crear una nueva columna (llamada AFIA-A-AQ QG) que comparará la columna venda_cotacao[id] con la columna BI_EXP[Lancamento] y cuando el valor en ambos sea el mismo, el valor de la columna BI_EXP[RENTS] debe ir a la nueva columna (HA-Fi-AQ-A QG). Si el BI_EXP [RENTS] tiene más de 1 fila de la que debería SUMAR todas las filas.

Hice esta fórmula a continuación y funciona muy bien... excepto cuando la columna BI_EXP[Lancamento] tiene más de 1 fila con el mismo valor... en esos casos, vuelve en blanco.

OBS.: la columna venda_cotacao[id] siempre tiene solo 1 fila por valor, pero el BI_EXP[Lancamento] puede tener 1 o más filas por valor.

PROFITABILIDAD HQ ?
var JoinCol á venda_cotacao[id]
var NewCol á CALCULATE(SUM(BI_EXP[RENTS]); BI_EXP[Lancamento]-JoinCol)
devolver NewCol
¡Muchas gracias!
Estas son las 2 tablas:

TABLE1: venda_cotacaoTABLA2:BI_EXP

Imagem 2.pngWhatsApp Image 2020-05-20 at 17.33.09.jpeg
1 ACCEPTED SOLUTION

@qgturismo ,

La tabla venda_cotacao se filtra por otras columnas por relación.

La solución consiste en crear una columna ignorando la tabla venda_terrestre_item.

Como:

Rentabilidade_QG calculate(SUM('Table (2)'[Rents]), FILTER('Table (2)', 'Table (2)'[Lancamento] ? EARLIER('Table'[id]));

ALL(venda_terrestre_item))

Además, eche un vistazo más de cerca al modelado de datos. Así que evita problemas con columnas/medidas.



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



View solution in original post

9 REPLIES 9
camargos88
Community Champion
Community Champion

Hola @qgturismo.

Pruebe esta fórmula:

Rentabilidade_QG CALCULATE(SUM('Table (2)'[Rents]), FILTER('Table (2)', 'Table (2)'[Lancamento] ? EARLIER('Table'[id])))
Puede enumerar las dos tablas tbm y usarlas como medida.


Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Rentabilidade_QG = CALCULATE(SUM(BI_EXP[RENTS]); FILTRO(BI_EXP; BI_EXP[Lancamento]-EARLIER(venda_cotacao[id])))

Hola @camargos88 , muchas gracias por la pronta respuesta.

He probado su solución, pero termina dando el mismo resultado de mi fórmula: Cuando la columna BI_EXP[Lancamento] tiene sólo 1 fila, funciona correctamente, sin embargo, cuando tiene varias filas con el mismo valor, de nuevo en blanco (no da error, pero devuelve en blanco)

¿Alguna otra idea?

Gracias

Hola @camargos88 muchas gracias por la respuesta rápida del tour
Probé su solución, pero responde igual que mi fórmula original. Cuando la columna BI_EXP[Lancamento] tiene solo 1 fila, funciona muy bien, pero cuando esta columna tiene 2 o más filas con el mismo valor, responde en blanco (sin error, solo en blanco).
¿Alguna otra idea?
saludos

@qgturismo ,

Extraño

Dame un ejemplo allí donde tiene más de 1 valor y devuelve blanco.

Si es el mismo de la foto, ¿cuál es el tipo de datos de la columna?



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



@camargos88 copiado la pantalla aquí dejando sólo 2 ejemplos para facilitar.

Tenga en cuenta que la versión 75436 tiene 3 líneas (2 líneas con el valor 0.00 y 1 línea con el valor 88.33) y en este caso, la respuesta a la fórmula viene blanca

La versión 75437 tiene 2 líneas (1 con el valor 0.00 y 1 línea con el valor 13.04) en este caso, la respuesta a la fórmula es 13.04 que es la respuesta correcta

TABLA1:venda_cotacao /TABLA2:BI_EXP

1.png2.png

@qgturismo ,

¿Cuál es el tipo de datos de las columnas?



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



@camargos88 ,

venda_cotacao[id] y BI_EXP[Lancamento ambos son NUMERO COMPLETO

BI_EXP[RENTS] y la nuevavenda_cotacao[Rentabilidade_QG] son

¿Esa era la pregunta? Lo siento si no lo entiendo.

@qgturismo ,

La tabla venda_cotacao se filtra por otras columnas por relación.

La solución consiste en crear una columna ignorando la tabla venda_terrestre_item.

Como:

Rentabilidade_QG calculate(SUM('Table (2)'[Rents]), FILTER('Table (2)', 'Table (2)'[Lancamento] ? EARLIER('Table'[id]));

ALL(venda_terrestre_item))

Además, eche un vistazo más de cerca al modelado de datos. Así que evita problemas con columnas/medidas.



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Muchas gracias por el duro esfuerzo y la ayuda.

saludos

@qgturismo ,

Muy extraño esto, se puede generar un pbix sólo con estos dos casos y compartir ?

Traté de reproducirme aquí, pero funciona.



Did I answer your question? Mark my post as a solution!

Proud to be a Super User!



Helpful resources

Announcements
May 2023 update

Power BI May 2023 Update

Find out more about the May 2023 update.

Submit your Data Story

Data Stories Gallery

Share your Data Story with the Community in the Data Stories Gallery.

Top Solution Authors