cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Syndicate_Admin
Administrator
Administrator

Sobre el subtotal y el total en matriz

hola

Estoy creando una matriz para el envío de contenedores.

Sin embargo, me pareció que el subtotal y el total son incorrectos y creo que entiendo la razón detrás, todavía no puedo averiguar cómo resolver esto después de leer un montón de fuentes en internet...

Para 'From Port', tengo CompanyA, Compañía B

Para 'CTNR_SIZE', tengo tipo A, tipo B, tipo C

esta matriz se utiliza para contar el número de contenedores que usamos cada mes.

El recuento distinto por tipo y mes están bien, pero el subtotal y el total no.

Por ejemplo, empresa B, hay un CTNR_NUM, CTNR20200401 aparece en el tipo A y el tipo B en abril. Como el subtotal en abril de la empresa B está contando el valor distinto, por lo que es 1 menos que (116+75+36 = 227)

No estoy usando ningún DAX, alguien puede decirme cuál es la manera apropiada de resolver este problema en detalle?

Muchas gracias.

phchu1226_0-1620893325003.pngphchu1226_1-1620893405355.png

1 ACCEPTED SOLUTION
Syndicate_Admin
Administrator
Administrator

@phchu1226 , es distinto de CTNR_NUM, si es así tratar de

sumx(summarize(Table,Table[From Port], Table[CTNR_SIZE],"_1", calculate( distinctcount ([CTNR_NUM]))),[_1])

View solution in original post

16 REPLIES 16
Syndicate_Admin
Administrator
Administrator

No @phchu1226

Puede verifique si un valor está segmentando el contexto.

Por favor, intente medir como:

Measure=
IF(HASONEVALUE([CTNR_NUM]),COUNT([CTNR_NUM]),BLANK())  

Saludos
enlace

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

@v-xulin-mstf

Hola, probó la medida anterior y devuelve (En blanco)..

phchu1226

No @phchu1226

Puede intentar medir como:

Total 1 = 
VAR __table = SUMMARIZE('Table1',[CTNR_NUM],"_value",COUNT([CTNR_NUM]))
RETURN
IF(HASONEVALUE(Table1[CTNR_NUM]),COUNT([CTNR_NUM]),COUNTX(__table,[_value]))

Saludos
enlace

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

No @hp_2198,

devolvió "COUNTX(__table,[_value])" = 944 que es el recuento distinto de CTNR_NUM,

¿Qué implica esto?

phchu1226_0-1621237734473.png

No @phchu1226,

¿Devuelve esta medida el total correcto?
Para los problemas en los que el total no se muestra como se esperaba en la matriz, consulte:

https://community.powerbi.com/t5/Quick-Measures-Gallery/Measure-Totals-The-Final-Word/m-p/547907

Saludos
enlace

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

¿Devuelve esta medida el total correcto?

> creo que no.. 944 es igual que calculate(DISTINCTCOUNT([CTNR_NUM]))

De hecho, hay algún número de pedido que se repite con diferentes empresas, por lo que el total debería ser mayor que 944.

No sé cómo puedo archieve esto.

No @phchu1226,

Lo siento, he modificado la medida como:

Total 1 = 
VAR __table = SUMMARIZE('Table1',[CTNR_NUM],"_value",COUNT([CTNR_NUM]))
RETURN
IF(HASONEVALUE(Table1[CTNR_NUM]),COUNT([CTNR_NUM]),SUMX(__table,[_value]))

Por favor, compruébalo.

Saludos
enlace

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

@v-xulin-mstf

No sé si mi pregunta no es lo suficientemente clara, permítanme explicarla en detalle y espero que pueda entender😉

Ahora tengo una tabla con columnas[Fecha],[CTNR_NUM],[CTNR_SIZE],[COMPANY]

y quiero crear una matriz para mostrar estos datos.

phchu1226_0-1621242043900.pngphchu1226_1-1621242138729.png

Sin embargo, tengo un problema en el problema de recuento distinto..

944 es el número de recuentos distintos (CTNR_NUM) de esta tabla,

Creo que el número total no es lo suficientemente preciso, ya que hay algunos [CTNR_NUM] es el mismo con diferentes [CTNR_SIZE] (es decir, HK001 & 20', HK001 &40'). En este caso, algunos de estos registros 'duplicados' no se contarían en el subtotal y total, pero cuenta en los valores de filas y columnas.. (por ejemplo: En abril, China, los valores son 116+75+36 = 227, no es euqal al subtotal 226.) Creo que 227 debería ser correcto en lugar de 226..

No sé cómo hacer que esos subtotales y el total computan correctamente..

Y probé el enfoque de amitchandak para hacerlo, el resultado es como se muestra a continuación,

todo se ve bien, el valor total, 966, parece correcto.

Sin embargo, la fila de China & 40 ' tienen algún problema.. Creo que algunos [CTNR_NUM] contaron 2 más para que el subtotal y el total no coincidan.phchu1226_3-1621243256638.png

¿Tienes idea de lo que está pasando?

¿Y este enfoque es una buena manera de hacerlo?

Lo siento por el mensaje largo, pero espero poder resolver este problema, ya que es muy importante que tengamos un 100% de datos precisos para mostrar.

Muchas gracias.

phchu1226

No @phchu1226

¿Podría proporcionar un archivo pbix después de eliminar datos confidenciales?

Lo comprobaré en mi entorno.

Saludos
enlace

Si esta publicación ayuda, considere Aceptarlo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

No @v-suck-mstf ,

Gracias por su ayuda.

Finalmente, descubrí cuál es el problema..

Tomé el dax de Amitchandak, pero le falta un groupBy_columnName> que es la fecha, así que el subtotal y el total todavía tienen algo mal.

Después de agregar una < másgroupBy_columnName> en resumir dax, el resultado es lo que necesito.

el subtotal y el total van bien.

phchu1226_0-1621313769280.png

Syndicate_Admin
Administrator
Administrator

@hp_2198

Hola, ¿quieres decir que puedo dividir esta matriz en dos matrices que corresponden a diferentes empresas? ¿Evitaría el error de cálculo del subtotal y el total?

o simplemente mantener esta matriz, no mostrar subtotal y total allí, a continuación, mostrarlos en otra matriz?

Gracias por su respuesta!

phchu1226

Sí, puede dividir la matriz para las empresas A y B.

Syndicate_Admin
Administrator
Administrator

¡Hola!

puede crear una matriz más para resolver el problema del subtotal. aquí va cómo

subtotal = calcular ([tribunal de CTNR_NUM]),FILTER(table_name,FromPort = "company1")

En el filtro agregue los detalles del nombre de columna según el cual desee su suma.

Syndicate_Admin
Administrator
Administrator

@amitchandak

utilizó su dax y ponerlo en 'Valores', todo va bien excepto estos dos subtotales,

165+102+167+227+90 = 751

229+134+217+272+116 = 968

¿Sabes lo que está pasando en estos dos subtotales?

phchu1226_1-1621226265261.png

Syndicate_Admin
Administrator
Administrator

Ahí, @amitchandak

Soy nuevo en powerbi, y tengo desconocimiento sobre la consulta de poder. Estoy leyendo el documento de Microsoft para entender cuál es el uso de esas funciones. ¿Puede explicar ligeramente cuál es la lógica de su consulta de energía? y cuál es la principal diferencia entre su consulta de energía y simplemente arrastre y suelte el recuento de CTNR_NUM de los campos en el lado derecho? ¡¡Muchas gracias!!

phchu1226

Syndicate_Admin
Administrator
Administrator

@phchu1226 , es distinto de CTNR_NUM, si es así tratar de

sumx(summarize(Table,Table[From Port], Table[CTNR_SIZE],"_1", calculate( distinctcount ([CTNR_NUM]))),[_1])

View solution in original post

Helpful resources

Announcements
PBI User Groups

Welcome to the User Group Public Preview

Check out new user group experience and if you are a leader please create your group!

MBAS on Demand

Microsoft Business Applications Summit sessions

On-demand access to all the great content presented by the product teams and community members! #MSBizAppsSummit #CommunityRocks

MBAS Attendee Badge

Claim Your Badge & Digital Swag!

Check out how to claim yours today!

Top Kudoed Authors