Jump to content


Photo

Cálculo De Horas


  • Faça o login para participar
1 reply to this topic

#1 _zEek_

_zEek_

    12 Horas

  • Usuários
  • 140 posts
  • Sexo:Não informado
  • Localidade:MS

Posted 28/09/2009, 01:03

Amigos estou com um grande problema,
preciso fazer um sistema que com calcule quantos minutos existem entre 2 horas somando 20 me 20 minutos até ae tudo bem,
Entrada ="13:30"
				Saida = "18:00"
				total = DateDiff("s",Entrada,Saida)
				segundos = (total) Mod 60
				minutos = ((total - segundos) / 60) mod 60
				horas = int((total) / 3600)
				TempoCompleto = (horas & ":" & minutos  )
				totalminutos = (horas * 60 ) + minutos

agora tenho que colocar um radio nas horas possíveis entre os horários
<% Function HoraMinuto(Hora)
				   HoraMinuto = (Hour(Hora)*60) + Minute(Hora)
				   End Function
				   Function MinutoHora(Minutos)  
				   MinutoHora = (Minutos \ 60) & ":" & (Minutos Mod 60)
				   End Function  %>
		<% 	For i = 0 To (totalminutos / 20) -1 %>
			 	<input  type="radio" name="hora" value="">
			 	<%
			 	   horad = (4.5) - i*(0.33)
			 	   horas = CStr(horad)
			 	   n_horas = Mid(horas, 1, InStr(horas, ",") - 1)
				   n_minutos = Round(Left(Mid(horas, InStr(horas, ",") +1, Len(horas))*0.6,2))
		 	 	Hora1 = CStr(n_horas) & ":" &CStr(n_minutos) 
			 	Hora2 = "13:20"
				Soma = HoraMinuto(Hora1) + HoraMinuto(Hora2)
				Response.Write MinutoHora(Soma)
				%><br>
		<% next%>

tentei algo assim, mais estou perdido.. entenderam? alguém, pode me ajudar?

Edição feita por: _zEek_, 28/09/2009, 01:04.


#2 Renan L. Queiroz

Renan L. Queiroz

    Mestre

  • Usuários
  • 690 posts
  • Sexo:Masculino
  • Localidade:Brasilia - DF

Posted 04/11/2009, 16:51

Pelo que vi no seu post, me parece que você já obteve êxito!

Caso queira tentar outra coisa, veja se isso se aplica:
<%	Function formataTempo(t)		if (len(t) < 2) then			t = "0"& t			formataTempo = t		else			formataTempo = t		end if	End Function	Dim inicio : inicio = "4/11/2009 15:05:00"	Dim fim : fim = "4/11/2009 18:00:00"	Dim aux : aux = inicio%>	<input type="radio" name="hora" value="<%=inicio%>"> <%=formataTempo(hour(inicio)) &":"& formataTempo(minute(inicio))%>	<br /><%	Do While (hour(aux) < hour(fim))		aux = DateAdd("n", 20, aux)		if (hour(aux) < hour(fim)) then%>			<input type="radio" name="hora" value="<%=aux%>"> <%=formataTempo(hour(aux)) &":"& formataTempo(minute(aux))%> <br /><%		else%>			<input type="radio" name="hora" value="<%=fim%>"> <%=formataTempo(hour(fim)) &":"& formataTempo(minute(fim))%> <br /><%				end if	Loop%>

Resultado:

15:05
15:25
15:45
16:05
16:25
16:45
17:05
17:25
17:45
18:00


Para apresentar somente o horário utilize a função do VBs datepart!!

Obs: Acredito que este script não seja a melhor forma, caso faça uma automatização posto aqui nomavente!
Outra, não possui verifição entre dias, caso seja necessário incluir a mesma.

Fonte: VBscript Functions

Edição feita por: Renan L. Queiroz, 04/11/2009, 17:15.

Especialidade: Desenvolvimento e Banco de Dados.


Este post lhe ajudou? Agradeça: Posted Image





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq