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: 
Not applicable

Cálculo de horas trabalhadas em Horário Comercial

Olá, preciso calcular o tempo gasto para concluir uma determinada atividade levando em consideração apenas o tempo gasto em horário comercial, sendo que trabalha-se de segunda a sexta das 08:00 até 12:00 e das 13:30 até 17:30 e nos sábados das 08:00 até 12:00.

Tentei utilizar a função networkdays porém ela considera apenas dias úteis de segunda à sexta e descarta o sábado.

Alguém tem alguma sugestão?

Att,

Claudimar Andreazza

Labels (1)
2 Replies
Not applicable
Author

Ola,

Andei pesquisando o forum e encontrei uma dica util para esta situação.

A função Networkdays() considera de Segunda a Sexta somente e possui um parâmetro que informa os feriados e estes não entram na contagem dos dias (mas este ultimo parâmetro não será utilizado).

Se pegar o período de 01/02/2013 até 28/02/2013 a função Networkdays() retornará 20 dias.

Para desconsiderar apenas os domingos você deve fazer o seguinte cálculo, obter a quantidade de semanas entre este período:

WEEK(01/02/2013) - WEEK(28/02/2013)

Esta operação irá retornar a quandidade de semanas que existem entre os períodos, em outras palavras retornará a quantidade de "Domingos" existentes entre este período.

Com esta lógica em mãos bsata apenas monstar a expressão (não cheguei a criar um exemplo, mas na pratica deve ser parecido com isso):

NETWORKDAYS('01/02/2013', '28/02/2013') - (WEEK(01/02/2013) - WEEK(28/02/2013))

O resultado desta expressão é a quantidade de dias (SEG-SAB) do período informado.

Agora precisa verificar o tratamento para o calculo das horas de quando é sabado pois são apenas 4 horas.

Abraços

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Claudimar,

Acredito que nesse caso, a solução é fazer um enriquecimento dos dados.

Toda data/hora, tem um número de serie, onde as horas são as casas decimais, facilmente conseguido com a ajuda do excel.

Exemplo:

28/01/2013 22:37=41302,94

Com isso, você pode criar uma relação entre as data/horas que você precisa definir como comercial tratando os intervalos, ou seja, de 41301,00 até 41301,60 (só exemplo), é comercial, se o horáriso são fixos em todas as semanas de todos os anos, dá para criar um rotina com autogenerate para criar uma tabela com todas as possibilidades dos últimos e próximos 5 anos, ou somente das datas existentes, depende da necessidade.

Na community tem exemplos de código que geram calendários, inclusive com feriados e etc, então, isso serve de base para "autogerar" um calendário comercial exclusivo para você relacionar com seus dados.

Qualquer dúvida, posta ai...

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)