Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

Seleccionar último valor tabla

Hola,

     Tengo la siguiente duda, a ver si hay alguien que me pueda ayudar......

      Yo tengo una tabla simple con 2 dimensiones:

          F1|F2

          A|10

          B|20

          C|40

          D|30

     Posteriormente creo unas expresiones y en una de ellas, yo necesito seleccionar el último valor del campo F2. No puedo usar la opción max(F2) porque el último valor no siempre será el máximo. ¿hay alguna forma de seleccionar ese último valor para usarlo en cálculos que necesito (en principio, dentro de la misma tabla)?

Un saludo

1 Solution

Accepted Solutions
bertinabel
Creator
Creator

Buen Día, Jonay,

   Opcion 1:  Con Set analysis ;

     = ({$ <trimestre = {$ ( "= Max (trimestre))"}>} F2)

   UltimoValorTabla1.JPG

     Opcion 2: Si ya tienes una tabla como la de la siguiente imagen, se anexa una expresión para tomar el ultimo valor del campo:

     Valor de la expresión = Bottom (TOTAL F2)

UltimoValorTabla2.JPG


Espero esto te ayude, saludos.


View solution in original post

13 Replies
ecolomer
Master II
Master II

Hola

De dónde sale la tabla?

Porque posiblemente lo puedas resolver desde el script de carga

Si nos puedes proporcionar mas datos, seguro que podremos ayudarte mejor.

Puedes probar a utilizar la función Peek (Campo,-1,Tabla)

Saludos,

Enrique Colomer

JoaquinLazaro
Partner - Specialist II
Partner - Specialist II

Hola Jonay:

Peek(F2, -1)

Saludos

Joaquín

JoaquinLazaro
Partner - Specialist II
Partner - Specialist II

Hola Jonay:

Perdón me he olvidado el entrecomillado

Peek('F2', -1, 'NombreTabla')

Si el campo lo cargas desde varias tablas puedes identificar de que tabla quieres el último valro

Saludos

Joaquín

Anonymous
Not applicable
Author

Buenas ,

     Joaquín, la función peek, estoy mirando ahora, y a nivel de tabla no seria aplicable....sino a nivel de scrip solamente.

     Enrique, los datos los cargo en el script a traves de una consulta en mysql. Pero si hay alguna forma me gustaria hacerlo en la tabla, porque dependiendo de los datos que quiera tomar para hacer ese cálculo final....si tomo como referencia años anteriores o no...el último valor va a variar

         F1|F2|año|trimestre

          A|10|2015|1

          B|20|2015|2

          C|40|2015|3

          D|30|2015|4

Un saludo

JoaquinLazaro
Partner - Specialist II
Partner - Specialist II

Justamente me refiero en el script.

Puedes tener Tabla1 y Tabla2 con el CampoX

Peek('CampoX', -1, 'Tabla1')

Peek('CampoX', -1, 'Tabla2')


Te devuelve el último valor cargado en cada tabla. Si omites el tercer parámetro te devuelve el último valor cargado


Saludos

Joaquín

bertinabel
Creator
Creator

Que tal Jonay,

    Se me ocurre intentar resolverlo con set analysis, o si lo deseas agregar en una fila adicional en una tabla con la función Bottom ()

anexo un ejemplo de como lo hice.

rubenmarin

Hola Jonay, se puede hacer creando una tabla con Aggr() donde asigne un número de fila, y según ese número de fila recuperar el último (poniendo en negativo la expresión de orden):

=FirstSortedValue(F2, -Aggr(RowNo(TOTAL), F1, F2))

Para recuperar el primero sería sin el 'menos'

El primero: FirstSortedValue(F2, Aggr(RowNo(TOTAL), F1, F2))

Créditos para Sunny T en este post.

Anonymous
Not applicable
Author

Buenas Ruben,

     La solución que me das, no la veo válida para lo que yo busco......He visto el Ejemplo de Sunny T, y el campo country puede tener varios valores iguales y mediante la expresión que construye selecciona el primer o último valor para ese country, es decir, lo que hace es seleccionar cada primer o último valor de cada country.

     En mi caso, mi clave si es única, y yo no deseo seleccionar el primer o último valor  de cada clave, sino que lo deseo es seleccionar el valor de la última clave:

     clave | valor

    clave1|valor1

    clave2|valor2

    clave3|valor3

    clave4|valor4

     Es decir, lo que necesito es coger solo el valor4, para utilizarlo en posteriores cálculos

Un saludo

Anonymous
Not applicable
Author

Buenas Bertin,

     Yo tengo la personal edition y no puedo abrir ficheros de otros usuarios, ¿podrias escribir la línea en cuestión?

¿Es muy complicado?

Un saludo