Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Posting on Qlik Community is temporarily paused for some users. Thank you for patience and we'll update you soon!
cancel
Showing results for 
Search instead for 
Did you mean: 
brunoducatti
Creator
Creator

Contar dias do mes intervalo

Pessoal, como contar no qlikview a quantidade de dias de 1 mês, considerando que possuo apenas um  intervalo de datas que pode ser entre meses diferentes.

Exemplo:

Tenho uma tabela de ferias com intervalo:

16/06/2015 até 17/07/2015.

Com base nisso, preciso ter uma tabela com o ano, mês e quantos dias possui no intervalo. Ficaria:

2015,

06,

15 (dias).

2015,

07,

17 (dias)

Grato,

Bruno

1 Solution

Accepted Solutions
aderlanrm
Partner - Specialist
Partner - Specialist

Olá Bruno,

Segue uma alternativa que talvez seja útil.

Dados:

LOAD Início, Término+1 as Término INLINE [

    Início, Término

    16/6/15, 17/7/15

    10/6/15, 29/6/15

];

Férias:

LOAD Distinct Year(Início) as Ano,

    Month(Início) as Mês,

    Round(If(Término>MonthEnd(Início),MonthEnd(Início),Término)-Início) as Dias

Resident Dados;

Concatenate (Férias)

LOAD Year(Término) as Ano,

    Month(Término) as Mês,

    Round(Término-If(Início<MonthStart(Término),MonthStart(Término),Início)) as Dias

Resident Dados;

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)

View solution in original post

8 Replies
robert_mika
MVP
MVP

LOAD

Hol,

Year(Hol) as year,

Month(Hol) as month

FROM

(ooxml, embedded labels, table is Sheet1)

;

final:

load

year,

month,

count(Hol) as Dias

resident Data

Group by month,year;

drop table Data;

2015-07-27_201314.png

Feeling Qlikngry?

How To /Missing Manual(18 articles)

brunoducatti
Creator
Creator
Author

Robert, primeiramente obrigado.

No caso da sua planilha constam todos os dias.

Na minha tabela só tenho a data inicial e final. Os demais dias não estão preenchidos, possuo em tabela apenas o primeiro e o ultimo dia do intervalo.

Alguma sugestão para este caso?

robert_mika
MVP
MVP

Data:

load

num(Min(Date#(Hol)))as MinDate,

num(max(Date#(Hol)))as MaxDate

inline [

Hol

16/06/2015,

17/07/2015

]

;

let MinDate=Peek('MinDate',0,'Date');

let MaxDate=Peek('MaxDate',0,'Date');

temp:

load

Year($(MinDate)+IterNo()-1) as Year,

Month($(MinDate)+IterNo()-1) as Month,

date($(MinDate)+IterNo()-1) as Dias

AutoGenerate (1)

WHILE $(MinDate) + IterNo() - 1 <= $(MaxDate)

;

final:

load

Year,

Month,

count(Dias) as dias

resident temp

Group by Month,Year;

drop table temp;

2015-07-27_212648.png

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Bruno,

Segue uma alternativa que talvez seja útil.

Dados:

LOAD Início, Término+1 as Término INLINE [

    Início, Término

    16/6/15, 17/7/15

    10/6/15, 29/6/15

];

Férias:

LOAD Distinct Year(Início) as Ano,

    Month(Início) as Mês,

    Round(If(Término>MonthEnd(Início),MonthEnd(Início),Término)-Início) as Dias

Resident Dados;

Concatenate (Férias)

LOAD Year(Término) as Ano,

    Month(Término) as Mês,

    Round(Término-If(Início<MonthStart(Término),MonthStart(Término),Início)) as Dias

Resident Dados;

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
nicolett_yuri
Partner Ambassador/MVP
Partner Ambassador/MVP

Como que você faz para adicionar um código com esses marcadores de linhas? Sério... não sei fazer isso rsrs!

aderlanrm

Not applicable

Assim Yuri Nicolett:

Clica nessa Seta azul do Avanced post Syntax Hightling e escolher a lingaguem

Yuri Nicolett

Print Cod.png

aderlanrm
Partner - Specialist
Partner - Specialist

É como Julio mostrou Yuri, eu sempre escolho SQL como linguagem, mas deveria ter a opção Qlik ali na lista.

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
nicolett_yuri
Partner Ambassador/MVP
Partner Ambassador/MVP

Boa!

Não sabia dessa!!

Muito obrigado!!