Skip to main content
Woohoo! Qlik Community has won “Best in Class Community” in the 2024 Khoros Kudos awards!
Announcements
Nov. 20th, Qlik Insider - Lakehouses: Driving the Future of Data & AI - PICK A SESSION
cancel
Showing results for 
Search instead for 
Did you mean: 
carlos13
Creator
Creator

Ayuda calculo en expresión

Lo que quiero es realizar la operación A/(A+B) esta variables son expresiones calculadas en qlikView. Pero no se porque me da un dato incorrecto en la tabla pivot.

Les dejo el ejemplo y gracias de antemano.

Saludos,

Carlos

5 Replies
jolivares
Specialist
Specialist

Hola..

Entiendo que debes revisar los calculos que tienes, porque aunque estas viendo unos numeros, es posible que no reflejen lo que quieres.

A = (rowno() / NoOfRows()) -(RangeSum(Above(sum(S_DIRECTO),0, rowno())) /sum(TOTAL S_DIRECTO))

RowNo()/NoOfRows() = 1

El rangesum / el sum = 1, ya que estas acumulando un total y que al final es igual al total mismo, de manera que A = 0...

Antes de seguir viendo esto, es mejor que revises bien lo numeros.

carlos13
Creator
Creator
Author

Hola juan,

Si están reflejando lo que quiero, la expresión A, B, los totales si me están mostrando los datos correctos, el problema esta en la operación de la expresión  A/(A+B) , ya que si tomo cada total por separado y realizo los cálculos no es correcto que me este mostrando 955,13%

Saludos y gracias.

soniacoprosa
Creator
Creator

Hola Carlos,

En lugar de utilizar las columnas, prueba a poner esto (que es el cálculo que tienes) y verás que así funciona:

= RangeSum((rowno() / NoOfRows()) -(RangeSum(Above(sum(S_DIRECTO),0, rowno())) /sum(TOTAL S_DIRECTO)))

/

RangeSum((rowno() / NoOfRows()) -(RangeSum(Above(sum(S_DIRECTO),0, rowno())) /sum(TOTAL S_DIRECTO)), -)

Un saludo,

carlos13
Creator
Creator
Author

Hola Sonia,

Al colocar eso en QlikView en una expresión me da 0 y ese no seria el resultado correcto, no se si estoy colocando algo mal o si lo puedes modificar en el qvw para verificar.

El resultado de hacerlo manual en excel es 45,96%, Como lo muestro en los objetos de texto.

Saludos,

soniacoprosa
Creator
Creator

Hola Carlos,

Creía que ayer me daba el valor que comentas, 45.96 %. El caso es que no guardé el documento. Al volver a hacerlo hoy, me da como a ti, el valor erróneo de 955.13%.

El cero que dices que te sale, será por no marcar en la expresión, en Modo Total --> Suma de filas ??

De todos modos, no entiendo muy bien que pasa, porque en las tablas simples los totales funcionan bien. He estado mirando algunas tablas que tengo en mis proyectos, en los que tengo totales y porcentajes y a mí me funcionan bien.

Te lo voy a mostrar con una de mis tablas (sería la 1ª columna de % que se ve en la tabla)

Lo que yo hago es marcar en las expresiones, en Modo Total --> Suma de filas. Las expresión utilizarían la función sum(), por ejemplo:

Imagina que la columna 1 de expresiones (Producción de Construcción) tiene:

= sum({$<Año = {$(#=((Max(Total Año))))}>} LstProdCostyRtdosxActividad.ProduccionCons)

y la columna 8 de expresiones (Margen Bruto de Construcción) tiene:

= sum({$<Año = {$(#=((Max(Total Año))))}>} LstProdCostyRtdosxActividad.MBrutoCons)

En la columna 8 de expresiones calculo un %:

= If( Fabs((Column(8)/Column(1))*100) > 999

, '9,9999'

, Column(8)/Column(1)

)

, en la columna 3 marco en Modo Total --> Expresión Total.

Siento no poder ayudarte.

Si consigues solucionarlo, me gustaría saber cual es el problema. Gracias.

Un saludo,