[firebase-br] RES: RES: Converter segundos em HH:MM:SS

Reinaldo diasmartins em gmail.com
Sex Ago 6 17:05:13 -03 2010


Criei a procedure e testei com

EXECUTE PROCEDURE prc_segundos(175574)

retornou '48:55:23', mas é só um caminho..



Em 06/08/2010 16:54, Wilson Mota - GMail escreveu:
> Testei com...
> select rsa.ret_horas
> from rdb$database
> LEFT JOIN PRC_SEGUNDOS(175523) RSA ON
> (1 = 1)
> ... mas retornou erro de Arithmetic Overflow.
> Vou testar melhor pra ver onde esta ocorrendo esse erro, mas já é meio
> caminho andando.
> Muito obrigado Reinaldo.
>
> []s
>
> Wilson
>
> ----- Original Message ----- From: "Reinaldo"
> <diasmartins-Re5JQEeQqe8AvxtiuMwx3w em public.gmane.org>
> To: <lista-JZX6CTs6PlE39yzSjRtAkw em public.gmane.org>
> Sent: Friday, August 06, 2010 4:15 PM
> Subject: Re: [firebase-br] RES: RES: Converter segundos em HH:MM:SS
>
>
> Tenta essa procedure amigo.
>
> SET TERM ^ ;
>
> create or alter procedure PRC_SEGUNDOS (
> P_SEGUNDOS integer)
> returns (
> RET_HORAS varchar(10))
> as
> declare variable HORAS integer;
> declare variable MINUTOS integer;
> declare variable SEGUNDOS integer;
> declare variable AUXILIAR numeric(18,10);
> declare variable AUX_HOR numeric(10,6);
> declare variable AUX_MIN numeric(10,6);
> declare variable AUX_SEG numeric(10,6);
> begin
> auxiliar = cast(p_segundos as Numeric(18, 10)); /* Permite trabalhar
> com as Frações */
> aux_hor = auxiliar / 3600;
> horas = cast(cast(aux_hor as varchar(30))as integer);
> aux_min = (aux_hor - horas) * 60;
> minutos = cast(cast(aux_min as varchar(30))as integer);
> aux_seg = (aux_min - minutos) * 60;
> segundos = cast(cast(aux_seg as varchar(30))as integer);
> ret_horas = cast(horas as varchar(04)) || ':' || cast(minutos as
> varchar(02)) || ':' || cast(segundos as varchar(02));
> suspend;
> end^
>
> SET TERM ; ^
>
>
> Em 06/08/2010 14:33, Wilson Mota - GMail escreveu:
>> Obrigado, qdo tiver a solução em Stored Procedure, reporto a vocês.
>> Obrigado
>> Wilson
>>
>> ----- Original Message ----- From: "UNIBRAS - PROGRAMAÇÃO"
>> <programacao-ha0WqbVhtsVY7rEOWxXFXaOqBt32l0WsCHSie7aZMj4-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org>
>>
>> To: "'FireBase'"
>> <lista-JZX6CTs6PlE39yzSjRtAkw-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org>
>> Sent: Friday, August 06, 2010 11:52 AM
>> Subject: [firebase-br] RES: RES: Converter segundos em HH:MM:SS
>>
>>
>> Para pegar inteiro e fração o delphi tem funções div e mod
>> repectivamente.
>>
>> Abcs,
>>
>> José
>>
>> -----Mensagem original-----
>> De:
>> lista-bounces-JZX6CTs6PlE39yzSjRtAkw-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org
>>
>> [mailto:lista-bounces-JZX6CTs6PlE39yzSjRtAkw-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org]
>> Em
>> nome de Wilson Mota - GMail
>> Enviada em: sexta-feira, 6 de agosto de 2010 11:17
>> Para:
>> hpensador-Re5JQEeQqe8AvxtiuMwx3w-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org;
>> FireBase
>> Assunto: Re: [firebase-br] RES: Converter segundos em HH:MM:SS
>>
>> Deixa eu explicar, tenho uma tabela de produtos onde gravo o tempo
>> utilizado
>> para sua produção, é um campo Integer chamado (Tempo_em_Segundos ) O
>> usuario
>> informa HHH:MM:SS, pois pode demorar mais que 24 horas para ser
>> produzido,
>> portanto se demorar 2 dias, 45 minutos e 23 segundos ele informa
>> 48:45:23.
>> Esse tempo eu gravo no banco em segundos que ficaria 175523 segundos.
>> Vou usar esse campo tambem para trazer uma somatoria de produtos da mesma
>> familia (sum(tempo_em_segundos) e também mostra-lo individualmente, porém
>> preciso mostrar no formato HH:MM:SS.
>> Ex: Produto 01 48:45:23.
>> Para isso preciso criar uma procedure onde:
>> 175523/3600 = 48,75638..... (48 horas)
>> 0,75638....*60 = 45.383333 ... (45 Minutos) 0,3833... * 60 = 23
>> (segundos)
>> A questão é como pegar o inteiro e a fração.
>> Obrigado.
>>
>> Wilson
>>
>>
>>
>>
>> ----- Original Message -----
>> From: "Hélio Oliveira"
>> <hpensador-Re5JQEeQqe8AvxtiuMwx3w-XMD5yJDbdMSQIYZ4X/+iSw em public.gmane.orgrg>
>>
>> To:
>> <lista-JZX6CTs6PlE39yzSjRtAkw-XMD5yJDbdMReXY1tMh2IBg em public.gmane.org>
>> Sent: Friday, August 06, 2010 9:10 AM
>> Subject: Re: [firebase-br] RES: Converter segundos em HH:MM:SS
>>
>>
>> Bom dia Wilson!
>>
>> extract( hour/min/milisecond ).... enfim
>>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>





Mais detalhes sobre a lista de discussão lista