6 Replies Latest reply: Aug 26, 2014 8:55 AM by Elvis S RSS

    Verificar Mês

    marcel viegas

      Bom dia pessoal,

       

      Estou montando um gráfico que nele uso a dimensão ano, na expressão que necessito utilizar eu precisarei dividir pelo numero de meses "12" nos anos que já se passaram, mas quando eu filtrar o 2014 ele n pode dividir por 12 pois estamos no mês 8, como posso fazer este calculo?

       

      Obrigado!!!

        • Re: Verificar Mês
          Felipe Dutra

          Você pode criar um FlagRealizado (FlagRealizado=1 para Mês/Ano <= MêsAno atual) no calendário e usar na expressão um Count({<FlagRealizado={1}>}Distintc Mês)

           

          Abs,

          Felipe

            • Re: Verificar Mês
              marcel viegas

              Oi Felipe,

               

              Entendi a logica mas n esta carregando meu script, ve ai se tu pode me ajuda a acha o que esta de errado.

               

              LET V_DATA_INI = '01/01/2011';

              LET V_DATA_FIN = '31/12/2014';

               

               

              [Calendario]:

              LOAD

              Date( Data, 'DD/MM/YYYY' ) as Data,

              Date( Data, 'DD/MM/YYYY' ) as id_data,

              Num( Day( Data ), '00' ) as DIA,

              Month( Data ) as MES,

              Year( Data ) as ANO,

              DayNumberOfQuarter( Data ) as [Dia Trimestre],

              DayNumberOfYear( Data ) as [Dia Ano],

              MonthName( Data ) as [Mes Ano],

              ' Dia '& Num( Day( Data ), '00' )& MonthName( Data ) as [ DIA Mes Ano],

              QuarterName( Data ) as Quarter,

              Week( Data ) as Semana,

              Ceil( Month( Data ) / 3 )&'º Trim' as Trimestre,

              Ceil( Month( Data ) / 4 )&'º Quadr' as Quadrimest,

              WeekDay( Data ) as [Dia Semana],

              ApplyMap( 'MapDias', Text( WeekDay( Data ) ) ) as [N° Dia Semana],

              AutoNumber( Data ) as Sequencial,

              If( WeekDay( Data )= 'dom', 0, 1 ) as DiaUtil,

              Year( Data )&Num( Month( Data ), 00 ) as [Ano Mes],

              if(MonthName(Data)<= Max(MonthName( Data )),1,0) as qtdeMes,

              Year( Data )&Num( Month( Data ),'00')&Num( Day( Data ), '00' ) as ID_CALENDARIO;

              //FlagRealizado (FlagRealizado=1 para Mês/Ano <= MêsAno atual);

              LOAD

              Date( DATE('31/12/2014') - Recno(), 'DD/MM/YYYY' ) as Data

               

               

              AutoGenerate( V_DATA_FIN - V_DATA_INI );

                • Re: Verificar Mês

                  Boa tarde

                   

                  Marcel,

                   

                  Para chamar as variáveis utilize $(VariavelAqui);

                   

                  exemplo:

                  AutoGenerate( $(V_DATA_FIN) - $(V_DATA_INI ));

                   

                  Abraço

                  • Re: Re: Verificar Mês
                    Fernando Tonial

                    Olá, faça conforme esse exemplo.

                     

                    [Calendario]:
                    LOAD
                      Date( Data, 'DD/MM/YYYY' ) as Data,
                      Date( Data, 'DD/MM/YYYY' ) as id_data,
                      Num( Day( Data ), '00' ) as DIA,
                      Month( Data ) as MES,
                      Year( Data ) as ANO,
                      DayNumberOfQuarter( Data ) as [Dia Trimestre],
                      DayNumberOfYear( Data ) as [Dia Ano],
                      MonthName( Data ) as [Mes Ano],
                      ' Dia '& Num( Day( Data ), '00' )& MonthName( Data ) as [ DIA Mes Ano],
                      QuarterName( Data ) as Quarter,
                      Week( Data ) as Semana,
                      Ceil( Month( Data ) / 3 )&'º Trim' as Trimestre,
                      Ceil( Month( Data ) / 4 )&'º Quadr' as Quadrimest,
                      WeekDay( Data ) as [Dia Semana],
                      ApplyMap( 'MapDias', Text( WeekDay( Data ) ) ) as [N° Dia Semana],
                      AutoNumber( Data ) as Sequencial,
                      If( WeekDay( Data )= 'dom', 0, 1 ) as DiaUtil,
                      Year( Data )&Num( Month( Data ), 00 ) as [Ano Mes],
                      Year( Data )&Num( Month( Data ),'00')&Num( Day( Data ), '00' ) as ID_CALENDARIO,
                      if(Data<= Today(),1,0) as _FlgRealizado;
                      //FlagRealizado (FlagRealizado=1 para Mês/Ano <= MêsAno atual);
                    Load
                      Date('$(V_DATA_INI)' + Recno() - 1) as Data
                    AutoGenerate (V_DATA_FIN - V_DATA_INI + 1);
                    

                     

                    Qlikfique-se.

                    Tonial.

                      • Re: Re: Verificar Mês
                        marcel viegas

                        Esta errado o meu script, pois não foi eu que criei ele meu colega falou que o codigo:

                        1. Load 
                        2.   Date('$(V_DATA_INI)' + Recno() - 1) as Data 
                        3. AutoGenerate (V_DATA_FIN - V_DATA_INI + 1); 

                        venho por default, no que vai interferir?

                         

                        Estou precisando resgatar o numero de mes dentro do ano,

                        por exemplo 2014(8),2013(12), 2012(12)(conforme o primeiro exemplo no post inicial).

                         

                        Obrigado pessoal!!!

                          • Re: Verificar Mês

                            Bom dia

                             

                            Marcel,

                             

                            Não sei se entendi direito, mas é o formato abaixo que você precisa para o Ano(Mês)?

                             

                             

                            LET V_DATA_INI = '01/01/2011';

                            LET V_DATA_FIN = '31/12/2014';

                             

                             

                             

                             

                            [Calendario]:

                            LOAD

                              Date( Data, 'DD/MM/YYYY' ) as Data,

                              Date( Data, 'DD/MM/YYYY' ) as id_data,

                              Num( Day( Data ), '00' ) as DIA,

                              Month( Data ) as MES,

                              Year( Data ) as ANO,

                              DayNumberOfQuarter( Data ) as [Dia Trimestre],

                              DayNumberOfYear( Data ) as [Dia Ano],

                              MonthName( Data ) as [Mes Ano],

                              ' Dia '& Num( Day( Data ), '00' )& MonthName( Data ) as [ DIA Mes Ano],

                              QuarterName( Data ) as Quarter,

                              Week( Data ) as Semana,

                              Ceil( Month( Data ) / 3 )&'º Trim' as Trimestre,

                              Ceil( Month( Data ) / 4 )&'º Quadr' as Quadrimest,

                              WeekDay( Data ) as [Dia Semana],

                              ApplyMap( 'MapDias', Text( WeekDay( Data ) ) ) as [N° Dia Semana],

                              AutoNumber( Data ) as Sequencial,

                              If( WeekDay( Data )= 'dom', 0, 1 ) as DiaUtil,

                              Year( Data )&'('&Num( Month( Data ), 00) &')' as [Ano Mes],

                              Year( Data )&Num( Month( Data ),'00')&Num( Day( Data ), '00' ) as ID_CALENDARIO,

                              if(Data<= Today(),1,0) as _FlgRealizado;

                              //FlagRealizado (FlagRealizado=1 para Mês/Ano <= MêsAno atual);

                            Load

                              Date('$(V_DATA_INI)' + Recno() - 1) as Data

                            AutoGenerate (V_DATA_FIN - V_DATA_INI + 1);