Estou desenvolvendo um projeto em vb.net estou usando winform.
Estou com seguinte problemas, é para uma empresa que os funcionários tem de 2 a 4 entradas no mesmo dia em horários diferentes, tipo assim:
Os caras entram as 7:00 e saí as 10:32, volta as 12:00 e saí as 14:50, entra 16:12 e saí as 19:25 entra 21:00 e saí as 23:48
ou pode ser que entre as 7:00 e saí as 12:00, depois entra as 14:24 e saí as 19:52, entra as 21:22 e saí as 23:50
ou entra as 7:00 e saí as 12:00 e depois entra as 15:30 e saí 23:40
AS entradas e saídas podem varias mas vai ser sempre de 2 a 4 entradas por dia, eu tenho que fazer um software que quando o cara for consultar o ponto mensal se o funcionário tiver passado de 8 horas trabalhas o software não mostre o ponto real que o funcionário fez mas mostre apenas 8 horas de trabalho ou seja quando for feita a consulta o programa soma todas as horas daquele dia e se passar de 8 horas ele reduz para 8 horas.
No banco de dados vai estar armazenado o horário real que o cara fez ma na tela apenas as 8 horas
Eu já tenho algo aqui estou quase chegando lá:
A horas são armazenadas da seguinte forma no meu banco: Tenho os campos:dia,horaentrada,minutoentrada,horasaida,minutosaida
Olha meu código como está:
If registro("dia") = 18 Then
Dim horaentrada = registro("horaentrada")
Dim horasaida = registro("horasaida")
Dim totalhoraentrada As Integer = totalhoraentrada + horaentrada
Dim totalhorasaida As Integer = totalhorasaida + horasaida
Dim totalhorafinal As Integer = totalhorasaida - totalhoraentrada
While i18 < 1
item = listafunc.Items.Add(registro("dia"))
i18 = i18 + 1
End While
If totalhorafinal <= 8 Then
item2 = registro("horaentrada") & ":" & registro("minutoentrada")
item.SubItems.Add(item2)
item3 = registro("horasaida") & ":" & registro("minutosaida")
item.SubItems.Add(item3)
MsgBox(totalhorafinal, MsgBoxStyle.Information, "ok")
Else
Dim horaroubo, horaroubo2 As Integer
''MsgBox(totalhorafinal, MsgBoxStyle.Information, "ok")
horaroubo = totalhorafinal - 8
horaroubo2 = registro("horasaida") - horaroubo
item2 = registro("horaentrada") & ":" & registro("minutoentrada")
item.SubItems.Add(item2)
item3 = horaroubo2 & ":" & registro("minutosaida")
item.SubItems.Add(item3)
End If
End If
Alguém pode me ajudar a arrumar esse código para calcular isso certinho?
Pergunta
alexandremanowar
E ae pessoal
Estou desenvolvendo um projeto em vb.net estou usando winform.
Estou com seguinte problemas, é para uma empresa que os funcionários tem de 2 a 4 entradas no mesmo dia em horários diferentes, tipo assim:
Os caras entram as 7:00 e saí as 10:32, volta as 12:00 e saí as 14:50, entra 16:12 e saí as 19:25 entra 21:00 e saí as 23:48
ou pode ser que entre as 7:00 e saí as 12:00, depois entra as 14:24 e saí as 19:52, entra as 21:22 e saí as 23:50
ou entra as 7:00 e saí as 12:00 e depois entra as 15:30 e saí 23:40
AS entradas e saídas podem varias mas vai ser sempre de 2 a 4 entradas por dia, eu tenho que fazer um software que quando o cara for consultar o ponto mensal se o funcionário tiver passado de 8 horas trabalhas o software não mostre o ponto real que o funcionário fez mas mostre apenas 8 horas de trabalho ou seja quando for feita a consulta o programa soma todas as horas daquele dia e se passar de 8 horas ele reduz para 8 horas.
No banco de dados vai estar armazenado o horário real que o cara fez ma na tela apenas as 8 horas
Eu já tenho algo aqui estou quase chegando lá:
A horas são armazenadas da seguinte forma no meu banco: Tenho os campos:dia,horaentrada,minutoentrada,horasaida,minutosaida
Olha meu código como está:
Alguém pode me ajudar a arrumar esse código para calcular isso certinho?
Link para o comentário
Compartilhar em outros sites
14 respostass a esta questão
Posts Recomendados