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: 
juanma21
Contributor III
Contributor III

Problemas con Join

Hola estimados, tengo problemas al unir dos tablas, por favor me podrían ayudar. Les adjunto qvw.

En este caso trato de unir en un campo aparte las ventas del mes anterior para poder llegar al resultado de la variación.

ventames.png

1 Solution

Accepted Solutions
bertinabel
Creator
Creator

Buen Día,

     Juan Manuel,

     Adjunto el archivo de Qlik con los cambios realizados.

     Espero resolver tu problema con esta versión.

Saludos !!!

View solution in original post

8 Replies
bertinabel
Creator
Creator

Juan Manuel,

     Una Pregunta, si adjuntaste el archivo correcto. Ya que veo que en el QVW lees un archivo que se llama "MesAnterior.xls" y adjuntaste uno con el nombre de "Ventas.xlsx"

Saludos.

juanma21
Contributor III
Contributor III
Author

Tienes razón, ya puse el archivo correcto.

bertinabel
Creator
Creator

Juan,

     Adjunto el archivo con la manera en que resolvi el problema.

     El detalle estaba en que primero tenias que hacer una agrupacion sumando los importes.


     Nota: La información del archivo de excel no tiene agunos detalles ejemplo:


     En la siguiente imagen se ve que para el dato Tda '6103' tiene periodo Actual de '201612' pero este dato no existe en PeriodoAnt

por lo que al hacer la union estos datos no los trae.

     MesAnterior.JPG


Saludos.

juanma21
Contributor III
Contributor III
Author

Hola Bertin, gracias por la respuesta, pero esa era la consulta, como puedo hacer para que si aparezcan y me el total del mes anterior, supuse que lo haría un outer join pero no lo hace.

bertinabel
Creator
Creator

Buen Día,

     Juan Manuel,

     Ok, no habia entendido tu idea al principio.

     Para lo que necesitas mostrar entonces la solución que encontré fue mediante Set Analisys.

    

     Entonces primero nos deshacemos de la tabla que teníamos adicional de periodo anterior, y se queda una sola tabla.

    

     Deje una sola Expresion :

     sum({$<PeriodoAct={">=$(=Date(Addmonths(Date(Date#(Min(PeriodoAct),'YYYYMM')),-1),'YYYYMM')) <=$(=Max(PeriodoAct))"}>}Importe)

Explico que hace cada parte del set analisys:

  • =Date(Addmonths(Date(Date#(Min(PeriodoAct),'YYYYMM')),-1),'YYYYMM') .-  Lo que hace es tomar el mínimo periodo seleccionado (En caso de tener mas de uno seleccionado, si no toma el único seleccionado) lo convertimos primero en fecha para poder restarle un mes y después lo volvemos a su formato original para que sea comparable con el campo PeriodoAct.

          Nota: aqui tu eliges cuantos meses (periodos) quieres tomar hacia atras, solo tienes que cambiar el -1.


  • =Max(PeriodoAct) .- Lo que hace es tomar el máximo periodo seleccionado (En caso de tener mas de uno seleccionado, si no toma el único seleccionado)


     Adjunto el archivo QVW.

Saludos.

juanma21
Contributor III
Contributor III
Author

Bertin, esta muy bien la respuesta, de esa forma deben aparecer las columnas por meses, pero debe haber otra columna con la variación, y el calculo es = mes actual / el mes anterior - 1, por favor como haría eso, estoy cambiando la formula de la expresión y no puedo obtener el mes anterior.

Muchas gracias por tu tiempo y por tu ayuda.

Saludos

JM

bertinabel
Creator
Creator

Buen Día,

     Juan Manuel,

     Adjunto el archivo de Qlik con los cambios realizados.

     Espero resolver tu problema con esta versión.

Saludos !!!

juanma21
Contributor III
Contributor III
Author

Muchas Gracias Bertin, con este ultimo script logre obtener el resultado.

Saludos

JM