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

Be one of the first to start using Fabric Databases. View on-demand sessions with database experts and the Microsoft product team to learn just how easy it is to get started. Watch now

Reply
Syndicate_Admin
Administrator
Administrator

Resultados incorrectos de una multiplicación de dos columnas calculadas en una tabla

Hola, chicos

En realidad, estoy haciendo un cálculo bastante simple y estoy multiplicando dos columnas calculadas de la misma tabla (Precio * Valor base %)

--> Valor Entregado = 'Valor Entregado'[PrecioHistoria]*'Valor Entregado'[Valor Base %]

Sin embargo, a veces no me da los valores correctos por unos pocos decimales. Por ejemplo:
Power BI calcula: 5300*9,331%=494,525
correcto sería: 5300 * 9,331% = 494,543

¿Alguien sabe cuál podría ser la razón de esto?

11 REPLIES 11
Syndicate_Admin
Administrator
Administrator

Hola @Alina12, el cálculo 5300 * 9,331% = 494,543 funciona correctamente en PowerBI (consulte la evidencia a continuación):

Sergii24_1-1721824178992.png

Sergii24_2-1721824197951.png

Por lo tanto, asumo que multiplicas otros números.

  1. ¿Qué es un tipo de "StoryPrice"? ¿Es un número "entero" o "decimal"? En caso de que sea decimal, intente cambiarlo a número entero
  2. ¿Qué pasa con el "Valor base %"? Supongo que al ser un "número decimal" 🙂 de PowerBI desktop te permitirá mostrar solo 10 decimales, pero para verificar si realmente es igual a lo que necesitas, puedes probarlo de la siguiente manera:
    Sergii24_3-1721824493043.png

¡Espero que te ayude! ¡Buena suerte con tu trabajo 🙂

Hola @Sergii24

¡Gracias por tu respuesta!
Eso también fue lo primero que pensé y luego probé varias opciones de tipos de datos. Con el precio de la historia como un número entero y el valor base % como un número decimal, desafortunadamente tampoco funciona. El valor base % como porcentaje tampoco funciona.
Probé su verificación de valor base y, curiosamente, solo me pongo falso aquí. No sé por qué

Alina12_0-1721825522001.png

¡Perfecto! Así que ahora ya sabes que "El valor base %" es en realidad diferente del número indicado debido al redondeo. Ahora te toca a ti decidir lo que necesitas: ¿quieres un cálculo preciso? Bueno, supongo que ya lo tienes.

¿Desea forzar a PowerBI a usar 9,331% incluso si hay más decimales presentes? A continuación, utilice la función redonda en su cálculo para obtener el resultado deseado.

Hola @Sergii24

Ok, ahora entiendo de dónde viene la diferencia. Sin embargo, si ahora quiero usar la versión redondeada. ¿Cuál es la mejor manera de redondear? Acabo de introducir el número decimal y el redondeo y me da los números "incorrectos".

Alina12_0-1722410668188.png

¿Debo incluir un comando de redondeo en mi DAX? Solo quiero usar la versión redondeada, porque de esa manera mis usuarios pueden entender el informe. De lo contrario, las cifras "incorrectas" estarían allí y el nuevo cálculo mostraría la cifra incorrecta.
Por ejemplo, 0,0933*3400= 317,24 en lugar de 317,22.
Por cierto, los totales son correctos

Hola @Alina12, la opción de su captura de pantalla afecta solo la forma en que se visualizan sus datos, pero no afecta los números subyacentes. Para redondear un número, debe usar la función Round() (puede obtener más información al respecto aquí)


Consulte la imagen a continuación y el pbix adjunto para ver un ejemplo:

Sergii24_0-1723895149988.png


¡Espero que te ayude! 🙂

Syndicate_Admin
Administrator
Administrator

Paso 0: Utilizo esta tabla de 'DATOS' a continuación.

mickey64_0-1721824161580.png

Paso 1: Agrego un columón calculado a la tabla 'DATA'.

Valor entregado = [Precio de la historia]*[Valor base %]
mickey64_1-1721824279196.png

Por favor, muéstrame tu archivo PBIX.

Hola @mickey64

desafortunadamente no puedo mostrarle el archivo porque es confidencial. Perdón por eso. Pero como puedo decir, el valor base % es un valor de búsqueda:

Valor base % =
LOOKUPVALUE(
'Total acumulado' [total móvil (%)],
'Total acumulado' [TeamID], 'Valor entregado' [TeamID],
'Total acumulado' [Número de sprint], 'Valor entregado' [Iniciado en el sprint],
'Total acumulado' [CompanyID], 'Valor entregado' [CompanyID]
)
Pero en la otra tabla, el tipo de datos es el mismo que en mi tabla real
Syndicate_Admin
Administrator
Administrator

@Alina12 , el problema que se encuentra con los cálculos de Power BI podría deberse a la forma en que Power BI controla la precisión decimal y el redondeo. Power BI, al igual que muchas otras herramientas de datos, a veces puede introducir pequeños errores de redondeo al realizar operaciones aritméticas, especialmente con números de punto flotante.

Intente usar la medida siguiente

Valor entregado = ROUND('Valor entregado'[StoryPrice] * 'Valor entregado'[% valor base], 3)

Syndicate_Admin
Administrator
Administrator

Hola @Alina12

Sospecho que se debe al redondeo de decimales.

¿Podría ser posible que el valor base % de la columna calculada sea en realidad el 9,33066 % y Power BI lo redondee visualmente al 9,331 %?



Hola @dk_dk

sí, eso es lo que sucede, porque el Valor Base % en sí mismo es un valor calculado (de otra tabla) y no un valor fijo 9.331%

Luego, para el cálculo del % del valor base, puede intentar configurarlo para calcular sin redondeo, y eso debería solucionar el problema.

Helpful resources

Announcements
Las Vegas 2025

Join us at the Microsoft Fabric Community Conference

March 31 - April 2, 2025, in Las Vegas, Nevada. Use code MSCUST for a $150 discount!

Dec Fabric Community Survey

We want your feedback!

Your insights matter. That’s why we created a quick survey to learn about your experience finding answers to technical questions.

ArunFabCon

Microsoft Fabric Community Conference 2025

Arun Ulag shares exciting details about the Microsoft Fabric Conference 2025, which will be held in Las Vegas, NV.

December 2024

A Year in Review - December 2024

Find out what content was popular in the Fabric community during 2024.

Top Solution Authors
Top Kudoed Authors