Estou há pouco tempo realizando analises e manutenção de BD no MySql e queria saber se podem me ajudar.
Eu criei uma função básica para auxiliar na identificação de horas para os colaboradores, neste caso os temporários já que os efetivos já tenho essa informação. O problema é que toda vez que tem algum feriado nacional eu tenho que desconsiderar manualmente as horas daquele dia e reprocessar a consulta. Se o feriado for de seg a qui são 9 horas e se for na sexta são 8 horas.
Função:
CREATE DEFINER=`dsdsd`@`%` FUNCTION `getValorHorasTemp`(EntradaMat varchar(255)) RETURNS int(11)
DETERMINISTIC
BEGIN
DECLARE matricula varchar(255);
DECLARE Horas INT;
SET matricula = EntradaMat;
IF LOCATE('.t', matricula) THEN
SET Horas = 44;
END IF;
RETURN Horas;
END
Pensei em otimizar deixando programado os feriados nacionais, e ao rodar a consulta ela deve verificar se na semana houve feriado e em qual dia, se for positivo, ela não deve desconsiderar a hora daquele dia. Já que são 44 horas a ideia é percorrer os dias e na confirmação de feriado e não considerar na soma ou subtrair do total. Contudo, não consegui colocar em pratica. Se puderem me ajudar com alguma dica, ficarei muito grato.
Pergunta
ismorfi
Olá pessoal,
Estou há pouco tempo realizando analises e manutenção de BD no MySql e queria saber se podem me ajudar.
Eu criei uma função básica para auxiliar na identificação de horas para os colaboradores, neste caso os temporários já que os efetivos já tenho essa informação. O problema é que toda vez que tem algum feriado nacional eu tenho que desconsiderar manualmente as horas daquele dia e reprocessar a consulta. Se o feriado for de seg a qui são 9 horas e se for na sexta são 8 horas.
Função:
CREATE DEFINER=`dsdsd`@`%` FUNCTION `getValorHorasTemp`(EntradaMat varchar(255)) RETURNS int(11) DETERMINISTIC BEGIN DECLARE matricula varchar(255); DECLARE Horas INT; SET matricula = EntradaMat; IF LOCATE('.t', matricula) THEN SET Horas = 44; END IF; RETURN Horas; END
Pensei em otimizar deixando programado os feriados nacionais, e ao rodar a consulta ela deve verificar se na semana houve feriado e em qual dia, se for positivo, ela não deve desconsiderar a hora daquele dia. Já que são 44 horas a ideia é percorrer os dias e na confirmação de feriado e não considerar na soma ou subtrair do total. Contudo, não consegui colocar em pratica. Se puderem me ajudar com alguma dica, ficarei muito grato.
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.