Skip to main content
Announcements
Accelerate Your Success: Fuel your data and AI journey with the right services, delivered by our experts. Learn More
cancel
Showing results for 
Search instead for 
Did you mean: 
jmmayoral3
Creator
Creator

¿Cómo obtener datos del último año?

Tengo la siguiente relación de ventas por meses:

Año
2011
2012
Mesenefebmarabrmayjunjulagosepoctnovdicenefebmarabrmay

253.246107.984326.949295.429208.240184.497164.346 59.688171.067195.099206.778215.427197.14161.137342.801147.749337.349

¿Cómo puedo hacer para que seleccionando un mes cualquiera, me muestre la tabla (o gráfico o el objeto que sea) del último año?. O sea, desde el mes seleccionado y los 11 meses anteriores.

ejemplo. Si se selecciona Abr- 2012 debe mostrar el mismo formato de tabla pero sólo desde mayo-2011 hasta abr-2012 incluidos

Año
2011


2011


2012
Mesmayjunjulagosepoctnovdicenefebmarabr

208.240184.497164.34659.688171.067195.099206.778215.427197.14161.137342.801147.749

Gracias.

1 Solution

Accepted Solutions
Miguel_Angel_Baeyens

José Manuel,

Tal como dije más arriba, asumo que el gráfico es una tabla pivotante, con Año y Mes como dimensiones, y la expresión mencionada como única expresión.

De esta forma, en una tabla pivotante puedes pivotar el Año para que aparezca de forma horizontal y después el Mes, de igual manera.

La tabla debería quedar (y queda, tal como muestro en el QVW adjuntado arriba) tal como lo solicitas.

Miguel

View solution in original post

9 Replies
Miguel_Angel_Baeyens

Hola José Manuel,

Suponiendo que el gráfico sea una tabla pivotante o tabla simple, y que las dimensiones sean Año y Mes, y el campo numérico se llamase "Importe", la expresión sería como:

Sum({< Fecha = {">=$(=Date(vFechaDesde))<=$(=Date(vFechaHasta))"} >} Importe)

Donde vFechaDesde y vFechaHasta son variables donde el usuario selecciona, a través de un objeto calendario, el rango de fechas que quiere ver el usuario.

Espero que te sirva.

Miguel

jmmayoral3
Creator
Creator
Author

Gracias Miguel Angel, pero no termina de servirme.

El usuario no selecciona una rango de fechas, sino que selecciona un año de un cuadro de lista y un mes de otro cuadro de lista y automáticamente se deben hacer los cálculos para mostrar el mes seleccionado y los 11 meses anteriores.

Los cuadros de lista del año y el mes se obtienen a partir de la fecha del albarán: [Fecha_albarán]

Saludos.

Miguel_Angel_Baeyens

Hola,

Revisa la aplicación de ejemplo que he subido.

Espero que te sirva.

Miguel

jmmayoral3
Creator
Creator
Author

Hola.

Estoy buscando la aplicación y no la encuentro.

Un detalle. Estoy trabajando con una versión personal de Qv. ¿la podré abrir?

Miguel_Angel_Baeyens

Hola,

Sí que podrás abrirla, pero gastarás dos recuperaciones de clave. A partir del 4, ya no podrás abrir ni guardar ficheros. La he puesto en el post de arriba, te copio aquí el enlace por si acaso:

http://community.qlik.com/servlet/JiveServlet/download/267110-46707/qcomDateCrossTable.qvw

Básicamente, la expresión es:

Sum({< Fecha = {">=$(=AddMonths(Max(Fecha), -13))<=$(=Date(Fecha))"} >} Importe)

donde como indicaba arriba, Fecha es el campo en el que el usuario selecciona e Importe el campo que quieres sumar.

Espero que te sirva igualmente.

Miguel

jmmayoral3
Creator
Creator
Author

Gracias, Miguel Angel.

Lo que ocurre es que la expresión me da el acumulado de un año para atrás sólo para la selección actual. Lo que necesito es poderlo visualizar como en el ejemplo que ponía arriba.

Ahora estoy atascado con las dimensiones, para que me muestre los 11 meses anteriores al seleccionado + el seleccionado.

Miguel_Angel_Baeyens

José Manuel,

Tal como dije más arriba, asumo que el gráfico es una tabla pivotante, con Año y Mes como dimensiones, y la expresión mencionada como única expresión.

De esta forma, en una tabla pivotante puedes pivotar el Año para que aparezca de forma horizontal y después el Mes, de igual manera.

La tabla debería quedar (y queda, tal como muestro en el QVW adjuntado arriba) tal como lo solicitas.

Miguel

omarlq20
Contributor II
Contributor II

Miguel,

Que tal, yo tengo un problema similar pero con año, mes, dia, va igual desde enero a diciembre del 2011 y de enero a octubre del 2012, lo que yo quiero conseguir es que cuando selecciona una fecha por ejemplo 2011-01-03, me sume todo lo anterior hasta esa fecha es decir desde 2011-01-01 hasta 2011-01-03, y asi sucesivamente si yo vuelvo seleccionar 2011-06-14, entonces me debe sumar desde 2011-01-01 hasta 2011-06-14, agradecere tú apoyo, gracias.

Miguel_Angel_Baeyens

Hola,

El mismo ejemplo que he subido arriba es válido, con pequeños cambios, ya que lo que entiendo es que en todo caso lo que quieres visualizar es desde la fecha seleccionada hasta el primer día del año. Para eso, cambia la expresión:

Sum({< Fecha = {">=$(=YearStart(Max(Fecha)))<=$(=Date(Fecha))"} >} Importe)

Espero que te sirva.

Miguel