Encuentre reservas positivas y negativas con la misma ID y luego agréguelas

Un usuario Pregunto ✅

Anónimo

Hola a todos,

Tengo una tabla que se ve así:

Número de proyecto Ingresos del proyecto
B56789 1000000
B02020 23546
B07897 67652

B56789 -1000000

Como puede ver, hay dos Proyectos con el mismo número y una reserva tiene exactamente el mismo monto, solo que negativo. Esto se debe a que en el sistema no puede eliminar reservas, solo elimínelas de esta manera si el proyecto se cancela.

Lo que quiero hacer es encontrar los proyectos coincidentes (coincidencia: mismo número de proyecto e ingresos exactamente opuestos).

Entonces no quiero eliminar estas filas, pero quiero agregarlas, para que se vean así:

De esta forma, se puede retener la información de a cuántos proyectos afecta.

B56789 0

Además, es crucial no verificar coincidencias absolutas, sino que sean exactamente positivas y negativas, porque es posible tener el mismo número de proyecto dos veces, con dos reservas positivas.

¡Cualquier ayuda sería muy apreciada! Gracias.

micca13

¿Ha intentado crear una medida de suma simple? Supongo que desea que los ingresos del proyecto sumen. Así que simplemente cree la medida: ingresos totales: = suma (Ingresos del proyecto).

Entonces, esto equivaldría a 0 para las entradas con valores positivos y negativos del mismo número entero.

Luego, en su tabla visual, coloque el número de proyecto y la medida de ingresos totales como sus entradas.

amichandak

@Anónimo, esto dará una nueva columna con bandera = 1 para tales transacciones

bandera=

if(isblank(countx(filter(Tabla, [Project Number] = anterior([Project Number]) && [Project Revenue] = -1*anterior([Project Revenue])),[Project Number] )), en blanco (), 1)

Sumanth_23

hola @Anónimo: si la columna de costo del proyecto es una columna de moneda cuando coloca lo mismo en una tabla visual, agregará automáticamente los valores según los registros disponibles para el proyecto

Lo mismo se aplicaría incluso si crea una medida para el costo de la suma del proyecto

Por favor, vea a continuación el siguiente enfoque:

Project_Cost = SUM( ProjectExpenses[Project Cost] )

Sumanth_23_1-1601538295771.png

Sumanth_23_0-1601538217246.png

Marque el comentario anterior como una solución para ayudar a otros a encontrarlo más rápidamente. También proporcione un 👍 si mi comentario ayudó a resolver su problema. ¡Gracias!

Sumanth_23

hola @Anónimo: si la columna de costo del proyecto es una columna de moneda cuando coloca lo mismo en una tabla visual, agregará automáticamente los valores según los registros disponibles para el proyecto

Lo mismo se aplicaría incluso si crea una medida para el costo de la suma del proyecto

Por favor, vea a continuación el siguiente enfoque:

Project_Cost = SUM( ProjectExpenses[Project Cost] )

Sumanth_23_1-1601538295771.png

Sumanth_23_0-1601538217246.png

Marque el comentario anterior como una solución para ayudar a otros a encontrarlo más rápidamente. También proporcione un 👍 si mi comentario ayudó a resolver su problema. ¡Gracias!

Anónimo

En respuesta a Sumanth_23

@Sumanth_23

Hola Sumanth, tienes toda la razón.

Sin embargo, hay una tercera columna, «Nombre del cliente», y debido a datos erróneos en el sistema original, los nombres pueden ser un poco diferentes, por lo que la suma inteligente no funciona (p. ej., «Microsoft», «Microsoft Alemania»). ¿Hay alguna manera de ignorar las diferencias en el nombre? Supongo que no.

Lamentablemente, la fórmula de @amitchandak no me funciona.

amichandak

@Anónimo, esto dará una nueva columna con bandera = 1 para tales transacciones

bandera=

if(isblank(countx(filter(Tabla, [Project Number] = anterior([Project Number]) && [Project Revenue] = -1*anterior([Project Revenue])),[Project Number] )), en blanco (), 1)

Anónimo

En respuesta a amichandak

@amitchandak

SandraM_0-1601539806539.png

Parece prometedor, pero recibo este error. Tal vez hice algo mal

amichandak

En respuesta a Anónimo

@Anónimo, la medida es DAX. Así que por favor crea una columna.

Estás creando una columna calculada en power query

micca13

¿Ha intentado crear una medida de suma simple? Supongo que desea que los ingresos del proyecto sumen. Así que simplemente cree la medida: ingresos totales: = suma (Ingresos del proyecto).

Entonces, esto equivaldría a 0 para las entradas con valores positivos y negativos del mismo número entero.

Luego, en su tabla visual, coloque el número de proyecto y la medida de ingresos totales como sus entradas.

Anónimo

En respuesta a micca13

Gracias por la respuesta. Sin embargo, no quiero sumar los ingresos del proyecto. Al final, quiero ordenar los proyectos por ingresos.

Aquí está el punto crucial. Si los clasifico por ingresos sin el paso descrito, veré algunos proyectos en la parte superior con ingresos altos. Sin embargo, se cancelan, pero no lo vería porque los proyectos negativos están en la parte inferior. Además, hay alrededor de 5000+ proyectos.

amichandak

En respuesta a Anónimo

@Anónimo, revisa mi sugerencia hecha al mismo tiempo que tu actualización.

«

Esto dará una nueva columna con bandera = 1 para tales transacciones

bandera=

if(isblank(countx(filter(Tabla, [Project Number] = anterior([Project Number]) && [Project Revenue] = -1*anterior([Project Revenue])),[Project Number] )), en blanco (), 1)

«

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *