Ir para conteúdo
Fórum Script Brasil
  • 0

Problema No Cod


raphael_suporte

Pergunta

Bom dia Galera, é o seguinte...

tenho que fazer um relatorio que some horas tipo um programa de PONTO que tem aqui...

ai é registrado entra saida pra almoço volta do almoço e saida, tipo minha gerente pediu para criar um relatorio

que mostra qnts horas de trabalho realmente cada fincionario teve, e isso fosse feito diario e mensal...

só que não achei o comando para para calcular =/ alguém pode dar um help??

obrigado desde já

Link para o comentário
Compartilhar em outros sites

15 respostass a esta questão

Posts Recomendados

  • 0

a sintaxe é essa:

DateDiff (tipo_do_intervalo as string, data_inicio as DateTime, data_fim as DateTime)
no intervalo, você poe a unidade em que quer que ele retorne o valor. exemplo:
s - segundos n - minutos h - horas d - dias m - meses yyyy - anos
seria assim, pra calcular o valor em minutos da diferenca entre a hora que ele entro e a hora que ele sai:
DateDiff ("n", {Tabela.Entrada}, {Tabela.Saida})

utilizo o 8.5 e funciona, acredito que no 8.0 deve da certo também

Link para o comentário
Compartilhar em outros sites

  • 0

como esta a formula que você esta usando?? faca o calcula que eu passei pra calcular os minutos e divida o resultado por 60. ai você tera o tempo em horas e em minutos.

mas não esqueca que o numero quebrado corresponde a proporcao de uma hora toda. ai você teria que fazer uma otra formula pra achar o valor em minutos.

exemplo:

3,5h igual a 3 horas e meia ou 3h e 30min

1,75h igual a 1h e 45min

Link para o comentário
Compartilhar em outros sites

  • 0

está como você falou ai em cima... já tinha feito a divisão por 60 só que ele não está reconhecendo como campo hora e sim number ou seja ele pega exemplo

04.000,00 e quero passa isso para hora que acho que resolve...

o comando está

datediff ("n", {hora.entrada1} ,{hora.saida1}) / 60

ele pega os campos 09:46 e 15:30 e retorna com 06:00 se entiver em "h" se estiver em "n" ele retorna como 06,15 e não 06:16 como deveria

sei que isso tem haver com a etrutura esta em String, teria como trocar para REAL??

Link para o comentário
Compartilhar em outros sites

  • 0

o esquema é você pegar a parte decimal, e multiplicar por 60. ai você poe a parte intera numa variavel e os minutos em otra. mas o crystal é meio chato pra mexer com numero, ele poe casas decimais e tal quando você converte pra string.

mas já tive que fazer isso uma vez, e tenho a formula em casa, guenta que ate o final de semana, eu posto aqui se você não conseguir.

Link para o comentário
Compartilhar em outros sites

  • 0

valeu cara muito obrigado mesmo...as dicas estap funcionando certinho...

se for ajudar em alguma coisa eu to pegando essas informaçoes de um MDB eu posso trazer direto o campo né, só que não tem datediff no Access mas vou tentar achar e se funcinar eu aviso aqui...vlw

Link para o comentário
Compartilhar em outros sites

  • 0

então no access, que eu me lembre tem o DateDiff sim e funciona do mesmo jeito. pelo menos da versao 2002 e pra frente é certeza.

então, a formula, pra mostrar em format hora é essa (em Basic Syntax):

Formula = CStr (Round (Int ({@Diferenca})), 0) & ":" & _
IIf (Len (CStr (Round (6 * CDbl (Right (CStr ({@Diferenca}), 2)) / 10), 0)) = 1, "0" & _
CStr (Round (6 * CDbl (Right (CStr ({@Diferenca}) ,2)) / 10), 0), CStr (Round (6 * CDbl (Right (CStr ({@Diferenca}), 2)) / 10), 0))[/code]

levando em conta que o calculo anterior que a gente discutiu nos outros posts esta guaradado num campo formula chamado @Diferenca, a formula seria essa.

no meu caso, os campos numericos tavam configurados pra duas casas decimais. se no seu caso tiver configurado diferente, você vai ter que adaptar a formula.

Link para o comentário
Compartilhar em outros sites

  • 0

isso que eu te passei so funciona se você selecionar a opcao de Basic Syntax la em cima (sendo que o normal é Crystal Syntax). o nome do campo no design você pode por qual quiser. mas no codigo, Formula, no Basic Syntax é o nome da variavel que vai guardar o valor a ser exibido no relatorio. obrigatoriamente você tem que passar o valor pra ela. ou seja, ela tem que ter em toda formula Basic Syntax.

Link para o comentário
Compartilhar em outros sites

  • 0

PS: sabe onde posso baixar uma apostila do CR 8??

não sei, cara. mas se você descobri, passa pra nos, que eu ponho num tópico pendurado no forum que mta gente pede, e realmente é dificil achar alguma coisa boa por ai.

no google você deve encontrar, mas normalmente é coisa bem basica.

no site do maccorati http://www.macoratti.net também tem alguma coisa

Link para o comentário
Compartilhar em outros sites

  • 0

Bom enfim achei uma apostila do Crystal Reports 8.0 o melhor em portugues, estou colocando o link já para download e tambei achei uma aqui Versão 6.0 se algume também precisar está ai

Crystal Reports 6.0

Crystal Reports 8.0

PS:estou tentando colocar na parte de tutorias

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...