Jump to content
Fórum Script Brasil
  • 0
Sign in to follow this  
tiago_pimenta

Essa é Pra Quem Manja

Question

Galera, tenho o seguinte codigo...

select funcionario.apelido, funcionario.nome, funcionario.setor, funcionario.empresa, ponto.data, ponto.entrada, ponto.ent_int, ponto.sai_int, ponto.saida, ponto.horas_trab
from funcionario
left outer join ponto on (ponto.apelido = funcionario.apelido)
where ponto.data between '02/22/2005' and '02/22/2005'  and funcionario.empresa = 'UNIMED BARRETOS'
order by ponto.data, funcionario.nome

Ele me mostra todos os funcionarios que bateram o ponto ... só o que eu preciso é que ele me mostre o nome daqueles que não bateram o ponto ... como posso fazer ?!?

Share this post


Link to post
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Amigo, e se na sua cláusula where você incluir mais um and

ex:

and ponto.entrada = 0, assim você verifica se realmente o funcionário bateu certo, pois este campo estando zerado , acredito que ele não tenha feito a marcação.

Espero ter ajudado

Darlan

Share this post


Link to post
Share on other sites
  • 0
Guest Guest

Darlan, quando a pessoal não bate o ponto , não fica cadastrado nada na tabela PONTO.

A solução que eu vejo para isso, seria buscar todos os nomes da tabela FUNCIONARIO, dai os funcionarios que bateram o ponto você colocar a hora de entrada, saida ,etc... e os que não bateram, você deixa o nome deles e os outros dados em branco... só que não sei como fazer isso no sql..

Grato

Share this post


Link to post
Share on other sites
  • 0

Olá colega, a cláusula Where aplica-se à toda sua Select, é por isso que ele está mostrando somente o que tem em ponto daquele dia.

Tente assim:

left join ponto on (ponto.apelido = funcionario.apelido and ponto.data between '02/22/2005' and '02/22/2005')
where funcionario.empresa = 'UNIMED BARRETOS'

Share this post


Link to post
Share on other sites
  • 0

isso, eu fiz aki ontem e deu certo mais agora temos outro problema, meu quickreport eu coloquei em group e a expression é no campo data, ou seja, no grid ele não mostra a data do pessoal ke não tem entrada na tabela, dai como o quickreport ta fazendo os grupo por data, essas pessoas que não tem data não aparecem no relatorio...

Grato

Share this post


Link to post
Share on other sites
  • 0

Olá, bom aí você me pegou, mas acho que você terá que fazer na mão utilizando o evento onNeedData do QuickRep.

Share this post


Link to post
Share on other sites
  • 0

bom dia

{P}im[e]nt{a} - só uma comentário, eu tb desenvolvo software para controle de ponto dos funcionários, só que eu utilizo net express 3.1 (cobol) para eu controlar esse tipo de evento quando o funcionário não bate o ponto, eu utilizo uma situação, mais ou menos assim:

entrada1 saida1 entrada2 saida 2 situaçao

8:00 12:00 13:00 18:00 1 - normal

digamos que o funcionário falte

entrada1 saida1 entrada2 saida 2 situaçao

00:00 00:00 00:00 00:00 0 - falta

eu verifico se as batidas não forem preenchida e coloco uma situação, no caso a falta, quando eu preciso de relatórios eu verifico a situação do dia..

espero ter ajudado

Darlan

Share this post


Link to post
Share on other sites
  • 0

Darlan, é , não deixa de ser uma dica para que eu possa melhorar o meu sistema de ponto.

Quando você verifica isso ? No final do dia ? Como que você faz essa verificação ?

Grato

Tiago Pimenta

Share this post


Link to post
Share on other sites
  • 0

Bem o meu processo é o seguinte, o relógio cria um arquivo texto com as batidas dos funcionários, então eu faço um processo de importação de dados, desse arquivo texto para minha base, depois eu gravo os dados, nesse momento eu faço a verificação, se as entradas estiverem em branco então o cara faltou, dai lanço a situação de falta.

O processo pode ser feito quando o usuário quiser, de manhã de tarde, de noite,..

Darlan

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

Cloud Computing


  • Forum Statistics

    • Total Topics
      148099
    • Total Posts
      643343
×
×
  • Create New...