Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
vagner_analista
Contributor III
Contributor III

gráfico não apresenta valores, quando seleciona uma data

Senhores,

criei um gráfico do tipo barra, onde minha dimensão é usuário, e na minha expressão, faço a soma de um campo chamado impresso, e no gráfico tento mostrar os usuários que mais imprimir em um período que o gestor irá selecionar, porém, quando não seleciono nenhuma data, o gráfico mostra os valores, mais ao selecionar um ano qualquer, o gráfico zera, a minha expressão está assim:

RANK(SUM(IMPRESSO))

13 Replies
vagner_analista
Contributor III
Contributor III
Author

GERENCIA:

LOAD

     CODDEPARTAMENTO,

     NOME_DEPARTAMENTO,

     NOME_NUCLEO

FROM

(qvd);

IMPRESSAO:

LOAD

     ID_IMPRESSORA,

     ID_USUARIO,

     NPAGINA,

     QTDCOPIA,

     NOME_ARQUIVO,

     COLORIDO,

     DUPLEX,

     DATAIMPRESSAO,

     CODDEPARTAMENTO,

     IMPRESSO

FROM

(qvd);

IMPRESSORA:

LOAD

     ID_IMPRESSORA,

     nmPrinter,

     vlCostPerPage

FROM

(qvd);

USUARIO:

LOAD 

ID_USUARIO,

     NOME_USUARIO,

     SALDO_ATUAL,

     COTA_MENSAL,

     dsUDNUpper,

     stColor,

     stSimplex

FROM

(qvd);

---------------------------------------------------------------------------------------------------------------------------------------------

/*Gera Calendário Master com dias, meses, anos, dias de semana, trimestres e outras informações com base na data*/

/*QuarterMap - Cria os Trimestres. Gera 12 linhas e as divide por 3. O número resultante é o número do trimestre*/

QuartersMap: 

MAPPING LOAD  

rowno() as Month, 

Ceil (rowno()/3) & 'º Trimestre' as Quarter 

AUTOGENERATE (12); 

 

/*Temp - Busca a menor e a maior data na tabela residente*/

Temp: 

Load 

   min(DATAIMPRESSAO) as minDate, 

   max(DATAIMPRESSAO) as maxDate 

Resident IMPRESSAO; 

 

/*Cria variáveis - data mínima e data máxima*/

Let varMinDate = Num(Peek('minDate', 0, 'Temp')); 

Let varMaxDate = Num(Peek('maxDate', 0, 'Temp')); 

DROP Table Temp; 

 

/*TempCalendar - Gera todos as datas entre a menor e a maior data definidas acima*/

TempCalendar: 

LOAD 

$(varMinDate) + Iterno()-1 As Num, 

Date($(varMinDate) + IterNo() - 1) as TempDate 

AutoGenerate 1 While $(varMinDate) + IterNo() -1 <= $(varMaxDate); 

 

 

/*Gera o calendário com base na TempDate gerada acima*/

CALENDÁRIO: 

Load 

TempDate AS DATAIMPRESSAO,               //Coloque o nome da sua coluna de data 

week(TempDate) As Semana, 

Year(TempDate) As Ano, 

Month(TempDate) As Mes, 

Day(TempDate) As Dia, 

YeartoDate(TempDate)*-1 as CurYTDFlag, 

YeartoDate(TempDate,-1)*-1 as LastYTDFlag, 

date(monthstart(TempDate), 'MMM-YYYY') as MesAno,

ApplyMap('QuartersMap', month(TempDate), Null()) as Trimestre, 

Week(weekstart(TempDate)) & '-' & WeekYear(TempDate) as SemanaAno, 

WeekDay(TempDate) as DiaSemana 

Resident TempCalendar 

Order By TempDate ASC; 

Drop Table TempCalendar; 

Thiago_Justen_

Vagner,

Altere esse "pedaço" de código confomre:

IMPRESSAO:

LOAD

     ID_IMPRESSORA,

     ID_USUARIO,

     NPAGINA,

     QTDCOPIA,

     NOME_ARQUIVO,

     COLORIDO,

     DUPLEX,

     DATE(FLOOR(DATAIMPRESSAO)) AS DATAIMPRESSAO,

     CODDEPARTAMENTO,

     IMPRESSO

FROM

(qvd);

Seu gráfico pode continuar com a dimensão usuário e com a expressão que você está usando...

Vamos verificar se funciona.

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago
vagner_analista
Contributor III
Contributor III
Author

Caracass Thiago, não sei qual é essa mágica, mais ficou perfeito, funcionando 100% agora, muito obrigado mesmo.

Thiago_Justen_

#tamojunto

Thiago Justen Teixeira Gonçalves
Farol BI
WhatsApp: 24 98152-1675
Skype: justen.thiago