Autor Tópico: Duvidas para calculo de hora  (Lida 1529 vezes)

alesalves

  • Visitante
Duvidas para calculo de hora
« Online: Julho 07, 2009, 11:41:10 am »
Gente estou precisando calcular uma diferenca de horas para chegar em valor de horas extras

resumindo estou fazendo assim

sc_select(htotal, "SELECT TIMEDIFF(Terminohex,Iniciohex) FROM hextras");
{tothe} = $htotal->fields[0];
$htotal->MoveNext();
$htotal->Close();

mas nao consigo receber o valor da hora certinho, alguem pode me ajudar?
« Última modificação: Julho 07, 2009, 12:00:02 pm por alesalves »

Haroldo

  • Expert
  • *****
  • Mensagens: 6293
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re: Duvidas para calculo de hora
« Responder #1 Online: Julho 07, 2009, 02:06:31 pm »
Terminohex e Iniciohex são que tipo de campos?

alesalves

  • Visitante
Re: Duvidas para calculo de hora
« Responder #2 Online: Julho 07, 2009, 02:10:13 pm »
todos sao do tipo time

alesalves

  • Visitante
Re: Duvidas para calculo de hora
« Responder #3 Online: Julho 08, 2009, 02:52:43 pm »
eu modifiquei os 3 campos ( ) para o tipo datetime, e como teste inseri o codigo abaixo em Eventos-> On load... o codigo funciona, mas ele calcula a diferenca das horas apos o clique no botao insert, deixando o calculo para o proximo clique...

/* Macro sc_lookup */

sc_select(horas, "
SELECT TIMEDIFF(Terminohex,Iniciohex) FROM hextras
");

/* Macro sc_lookup */
if (FALSE === {horas}) {
   sc_erro_mensagem("Ocorreu um erro no acesso ao banco de dados.<BR>");
}
elseif (count({horas}) == 0) { /* Macro sc_lookup */
   sc_erro_mensagem("Nenhum valor foi retornado pelo banco.<BR>");
}
else {
   while (!$horas->EOF) {
   /* Utilize a linha abaixo como exemplo
      para atribuir os valores do banco a seus campos. */

      {tothe} = $horas->fields[0];


      $horas->MoveNext();
   }
   $horas->Close();
}


Eu sei que o local correto nao é no onlload, mas o único lugar em que eu consegui fazer o codigo rodar foi alí... ja pesquisei nas bases de exemplo e nao encontrei nada.

Eu preciso que antes de gravar na tabela, o mysql (pode ser o php tb) extraia a diferença de horas (final - inicial) e grave pra mim num campo...

Eduardo Alves

  • Avançado
  • ****
  • Mensagens: 262
    • SLords Informatica
    • Email
Re: Duvidas para calculo de hora
« Responder #4 Online: Fevereiro 14, 2011, 01:42:47 pm »
eu faço de uma outra maneira para calculo de diferença de horas:

Select SUBTIME(`os`.`hora_final_atendimento`,`os`.`hora_final_atendimento`) AS total_horas from os

Eduardo Alves
Gestor de TI e Segurança de Dados
Tel: (11) 8400-0224 (TIM) – Nextel: Id: 5 * 4522
email: analista@slords.com.br skype: analista.slords
www.slords.com.br