Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Find everything you need to get certified on Fabric—skills challenges, live sessions, exam prep, role guidance, and more. Get started

Reply
Syndicate_Admin
Administrator
Administrator

Cálculo de solo valores positivos de diferentes fuentes

Quiero calcular la cantidad que tenemos que producir para un año definido.
Todo funciona bien hasta que quiero resumir solo los valores positivos de la fila "Necesidad".
Siempre obtengo el mismo valor para "Producción" que para "Necesidad".
Ya comprobé las relaciones. Todo es correcto.
NO IDEAOutput TableOutput TableTablaMeasuresMeasuresde salida Mide tablaWIP TableWIP TableWIP

1 ACCEPTED SOLUTION

¡Perfecto! Ahora funciona.
¡Muchas gracias por el apoyo!


Mi último error (el uso de la solución anterior) fue el uso de la definición de filtro incorrecta ... Dios mío

Aquí mis lecciones aprendidas:

  1. No use 'VAR' en la medida para este contexto, porque la suma será incorrecta (Need_5)
  2. No utilices una simple función 'SI'. La suma será incorrecta (Need_1)
  3. Funciona con una medida con 'SUMX' y la definición de filtro correcta (Need_3)
  4. Puede mejorar la medida utilizando 'ISINSCOPE' (Need_2) o 'HASONEVALUE' (Need_4)

Una vez más, gracias por el excelente soporte.

bennobesler_0-1722595912062.png

View solution in original post

8 REPLIES 8
Syndicate_Admin
Administrator
Administrator

Hola, @bennobesler estoy encantado de ayudarte.
Hola, @PhilipTreacy, gracias por su preocupación sobre este tema.

¡Tu respuesta es excelente!
Y me gustaría compartir algunas soluciones adicionales a continuación.

Solo necesita un pequeño cambio para darse cuenta de sus necesidades, antes de que el error de cálculo de la medida [Necesidad] se deba a que el cálculo de la medida depende del entorno informático actual, cada línea del entorno informático puede ser diferente, para el cálculo de la línea Total de la lógica es calcular el valor total de la medida directamente en ellos Como se muestra en la figura 103 + 205-285-194 = -171
Por lo tanto, debe usar HASONEVALUE() o ISINSCOPE() para determinar la jerarquía del cálculo MEASURE actual

Realice cambios en su medida [Necesidad].


Así

result_Need = 
IF (
    ISINSCOPE ( Backlog[Material nbr] ),
    [Need],
    SUMX ( FILTER ( 'Backlog', [Need] > 0 ), [Need] )
)
//Use HASONEVALUE()or ISINSCOPE() determine the hierarchy of the current MEASURE calculation

vjtianmsft_0-1721613437362.png
Aquí son mis datos de prueba:

M_Backlog = SUM('Backlog'[Quantity])

M_Provisions = SUM('Provisions'[Quantity])

M_Inventory = SUM('Inventory'[Quantity])

WIP = SUM('Last_Value_Table'[Last Quantity])



Need = [M_Backlog]+[M_Provisions]-[M_Inventory]-[WIP] 



vjtianmsft_1-1721613478969.png

vjtianmsft_2-1721613524720.png


Por suerte he encontrado posts similares que han sido resueltos.
URL:
Resuelto: Re: Total incorrecto - Comunidad de Microsoft Fabric

Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, aclare en una respuesta de seguimiento.

Saludos

Carson Jian,

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



Eh
Todavía tengo el problema. Aquí algunos datos más.

Tengo tres archivos con una línea de tiempo (ID para la fecha de almacenamiento), por lo que tengo que seleccionar el último día para obtener los valores actuales.
Cuando comparo los diferentes Need-Calculation con Excel, Need 3 entrega los valores correctos por línea, pero la suma no es correcta.

Probé varios escenarios, pero nada ayuda a resolver el problema...

Parece que tienen un problema básico. Sería genial, si puedes ayudar.

Saludos

Benno



ModellModellModeloNeed 2Need 2Necesidad 2Need 3Need 3Necesidad 3Need 4Need 4Necesidad 4
ResultResultFiltrode resultadosFilterFilter

Excel calculationExcel calculationCálculo en Excel


Hola, @bennobesler .¡Gracias por su respuesta
Dehecho, me di cuenta de que su medida: _Need_3 devuelve directamente la cantidad de valor variable en el juicio FI, que no es una medida y puede causar problemas cuando se devuelve directamente.

Aquí está mi prueba, ¡espero que te ayude!


_Need_3:

vjtianmsft_0-1722319152911.pngvjtianmsft_1-1722319160412.png

vjtianmsft_2-1722319166784.png

Debe modificar su código de acuerdo con sus datos reales

_Need3_Change = 
    SUMX ( FILTER ( 'Backlog', [Need] > 0 ), [Need] )
    //Please don't use var variables to put in sumx as a condition, it may cause problems, the correct way is to use the measure [Need] directly.
    //Need = [M_Backlog]+[M_Provisions]-[M_Inventory]-[WIP]. 
    
//or use function:ISINSCOPE


_Need3Change2 = 
IF(
    ISINSCOPE('Backlog'[Material nbr]),SUMX(FILTER('Backlog',[Need]>0),[Need]),
    SUMX(FILTER('Backlog',[Need]>0),[Need])
)
// Don't use the var variable approach, pass the variable directly into the sumxx function, and try to use MEASURE as a judgment and operation condition.

No use el juicio SI y luego devuelva la cantidad directamente, porque puede que no funcione para el juicio total.

Es mejor utilizar la misma función ISINCOPE para determinar si la columna total actual, si es una columna total, es el resultado del retorno de la agregación de la suma, en lugar de devolver directamente la "cantidad", porque el total es teóricamente una colección de almacenamiento de valores

Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, aclare en una respuesta de seguimiento.

Saludos

Carson Jian,

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

¡Perfecto! Ahora funciona.
¡Muchas gracias por el apoyo!


Mi último error (el uso de la solución anterior) fue el uso de la definición de filtro incorrecta ... Dios mío

Aquí mis lecciones aprendidas:

  1. No use 'VAR' en la medida para este contexto, porque la suma será incorrecta (Need_5)
  2. No utilices una simple función 'SI'. La suma será incorrecta (Need_1)
  3. Funciona con una medida con 'SUMX' y la definición de filtro correcta (Need_3)
  4. Puede mejorar la medida utilizando 'ISINSCOPE' (Need_2) o 'HASONEVALUE' (Need_4)

Una vez más, gracias por el excelente soporte.

bennobesler_0-1722595912062.png

Hola, @bennobesler . Gracias por su respuesta.
De nada.

Syndicate_Admin
Administrator
Administrator

@bennobesler

Estoy confundido. ¿Try2 for Producton no te da lo que quieres? ¿Qué es lo que realmente quieres si no es así?

Phil

Hola, @bennobesler .
¿Puedo preguntar si los consejos que di fueron útiles?
Si te ha ayudado, puedes marcar las sugerencias que te han ayudado como soluciones o compartir tus soluciones en el foro.
Si su problema aún no está resuelto, ¿podría proporcionar más información no confidencial? Sería genial si pudiera compartir el archivo PBIX que no contiene datos confidenciales, sería útil para resolver su problema.

Espero que mis sugerencias le den buenas ideas, si tiene más preguntas, aclare en una respuesta de seguimiento.
Saludos
Carson Jian,
Si esta publicación ayuda, considere Acéptalo como la solución para ayudar a los demás miembros a encontrarlo más rápidamente.

Ese es exactamente mi problema.
Probé el cálculo y, por lo tanto, creé una tabla.
Cuando se usa el segundo cálculo, siempre obtengo la suma total en la tabla para todas las líneas.

Table 4Table 4Cuadro 4

Helpful resources

Announcements
Europe Fabric Conference

Europe’s largest Microsoft Fabric Community Conference

Join the community in Stockholm for expert Microsoft Fabric learning including a very exciting keynote from Arun Ulag, Corporate Vice President, Azure Data.

AugPowerBI_Carousel

Power BI Monthly Update - August 2024

Check out the August 2024 Power BI update to learn about new features.

August Carousel

Fabric Community Update - August 2024

Find out what's new and trending in the Fabric Community.

Top Solution Authors