3 Replies Latest reply: Nov 24, 2014 8:44 AM by Luciano Vasconcelos Branched to a new discussion. RSS

    Comparar porcentagem entre meses/anos anteriores

      Boa Tarde amigos, tudo bem?

       

      Sou iniciante no QV e estou com algumas dúvidas:

      Eu preciso fazer um arquivo  parecido com essa planilha, estou usando ela como base de dados(somente as colunas Year, Month, Series, Index e Index Value) e preciso fazer o calculo de porcentagem igual a coluna percent no próprio QV comparando os anos anteriores

       

      EX:

       

      Calcular a porcentagem do mês de Agosto dos anos 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013 e 2014.

       

      OBS -  meu Qlikview ja venceu a licença, então não consigo abrir arquivos feitos em outras maquinas.

        • Re: Comparar porcentagem entre meses/anos anteriores
          Fernando Tonial

          Olá Tiago,

           

          Para esses casos que você necessita comparar informações entre períodos e os períodos estão sendo utilizados como dimensão, é necessário criar uma tabela auxiliar com algumas informações.

          Essa técnica é denominada AsOf Date.

           

          Veja o exemplo.

           

          Dados:
          LOAD
              Date(Data,'YYYYMM')                            AS [ID_MesAtual],
              *
          Where IsNum(Data);
          LOAD 
              MakeDate(Num(Year),Num(Month))                 As Data,
              Num(Year)                                     AS Year,
              Num(Year)-1                                 AS PreviousYear, 
              Num(Month)                                     AS Month, 
              Series, 
              Index, 
              [Index Value]
          FROM
          [Brazil - Key Segments Production Tracker2.xlsx]
          (ooxml, embedded labels, table is [Textiles Prod], filters(
          Replace(1, top, StrCnd(null))
          ));
          
          [AsOfDate]:
          LOAD
              Year(Data)                            AS Ano,
              Month(Data)                            AS Mês,
              MonthName(Data)                       AS [Mês Ano]
              ,Date(Data,'YYYYMM')                AS ID_MesAtual
              ,'Corrente' as ID_Tipo_MesAno
              ,1 as Flg_MesAnoCorrente
              ,0 as Flg_MesAnoAnterior
          ;
          LOAD DISTINCT Data
          RESIDENT Dados
          ;
          CONCATENATE ([AsOfDate])
          LOAD
              Year(Data)                            AS Ano,
              Month(Data)                           AS Mês,
              MonthName(Data)                     AS [Mês Ano]
              ,Date(AddYears(Data,-1),'YYYYMM')    AS ID_MesAtual
              ,'Anterior' as ID_Tipo_MesAno
              ,0 as Flg_MesAnoCorrente
              ,1 as Flg_MesAnoAnterior
          ;
          LOAD DISTINCT Data
          RESIDENT Dados
          ;
          

           

          Para fazer os cálculos dos valores é necessário fazer o uso dos campos Flag.

          Expressão para Valor do Ano Mês Dimensão

          Sum({$<Flg_MesAnoCorrente={1}>} [Index Value])

           

          Expressão para Valor da Variação Percentual.

          Sum({$<Flg_MesAnoCorrente={1}>} [Index Value])/Sum({$<Flg_MesAnoAnterior={1}>} [Index Value])-1

           

          Ficando assim:

          21-11-2014 14-11-06.png

           

          Qlikfique-se.

          Tonial.