Autor Tópico: Select no grid lookup  (Lida 467 vezes)

flbasto

  • Iniciante
  • **
  • Mensagens: 53
    • Email
Select no grid lookup
« Online: Maio 13, 2015, 01:32:32 pm »
Boa tarde, tenho uma tabela no banco com todos os valores de hora extra de cada dia trabalhado de cada funcionario, gostaria que a soma desses valores fosse informada em um control, após o usuario selecionar o nome Denilson, por exemplo, aparecer a soma de todos os registros correspondentes a hora extra..

Tentei isso no grid lookup : SELECT SUM(HORAS_EXTRA)
FROM BANCO_HORA
WHERE USUARIO_idUSUARIO = '[usu]'
ORDER BY HORAS_EXTRA

onde [usu] é o id do usuario selecionado no app_controle anterior, alguem pode me ajudar?

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Select no grid lookup
« Responder #1 Online: Maio 13, 2015, 02:20:41 pm »
No Controle:

Um campo to tipo select para selecionar o Funcionário.

No evento ajax onchange: sc_lookup com seu select sum para o id do funcionário selecionado no campo anterior, o resultado você move para um campo do tipo text para apresentar as horas somadas.

flbasto

  • Iniciante
  • **
  • Mensagens: 53
    • Email
Re:Select no grid lookup
« Responder #2 Online: Maio 13, 2015, 03:50:50 pm »
Deu certo, mas não trás em formato de horário, trás inteiro, tentei isso:

sc_lookup(ds1, $sql1);
$total_hora_extra = {ds1[0][0]};
$return10 = date('H:i:s',strtotime($total_hora_extra));
[total_hora_extra] = $return10;

Mas todos os valores ficam como 21:00:00, alguem sabe o pq?

Haroldo

  • Expert
  • *****
  • Mensagens: 6276
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Select no grid lookup
« Responder #3 Online: Maio 13, 2015, 03:57:37 pm »
<?php
function SecondstoHours($_sec='0')
{
   $_h=(int) ($_sec/3600);
   $_hms=str_pad($_h,2,'0',STR_PAD_LEFT).':';
   $_m=(int) (($_sec-($_h*3600))/60);
   $_hms.=str_pad($_m,2,'0',STR_PAD_LEFT).':';
   $_s=$_sec-(($_h*3600)+($_m*60));
   $_hms.=str_pad($_s,2,'0',STR_PAD_LEFT);
   return $_hms;
}

function toSeconds($_hms='00:00:00')
{
   $_arr=explode(":",$_hms);
   $_sec=($_arr[0]*3600)+($_arr[1]*60)+$_arr[2];
   return $_sec;
}

function toMinutes($_hms='00:00:00')
{
   $_arr=explode(":",$_hms);
   $_sec=($_arr[0]*60)+($_arr[1]);
   return $_sec;
}
function MinutestoHours($_m='0')
{
   $_h=(int) ($_m/60);
   $_hm=str_pad($_h,2,'0',STR_PAD_LEFT).':';
   $_m=$_m-($_h*60);
   $_hm=$_hm.str_pad($_m,2,'0',STR_PAD_LEFT).':00';
   return $_hm;
}
?>

flbasto

  • Iniciante
  • **
  • Mensagens: 53
    • Email
Re:Select no grid lookup
« Responder #4 Online: Maio 13, 2015, 04:29:17 pm »
Consegui da seguinte maneira:

$sql1 = "SELECT SEC_TO_TIME( SUM( TIME_TO_SEC( HORAS_EXTRA ) ) )
AS total_horas FROM Projeto_Banco_Hora.BANCO_HORA WHERE USUARIO_idUSUARIO = '$id_usuario'";

É possivel colocar um TOTAL no grid que contém todos os horarios? Total de banco hora, hora extra e adicional noturno, calculando por usuario, algo assim, é possivel?