ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

RESOLVIDOSubtrair Datas no delphi e obter resultado em Meses

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
bonidog
Novato
Novato


Registrado: Terça-Feira, 15 de Setembro de 2009
Mensagens: 20

MensagemEnviada: Qui Mar 04, 2010 4:15 pm    Assunto: RESOLVIDOSubtrair Datas no delphi e obter resultado em Meses Responder com Citação

Boa tarde a todos Very Happy

Estou com uma duvida sobre como eu poderia trabalhar com datas no delphi. As datas estariam em dois DBedits com mascaras de datas, eu preciso pegar o valor desses dois DBedits e subtrailos e assim tendo o resultado em meses e atribuindo um valor a outro DBedit que com o resultados da subtração das datas entraria em um um If para gerar o comando correto.

Simplificando. 04/01/2010 - 04/04/2010 = 3 meses

if (x >=1 and x <3>3 and x <=6)
DBeditResult = resultado de 3 a 6 meses)


Espero ansiosamente a Ajuda de vocês

Obrigado. Smile


Editado pela última vez por bonidog em Qui Mar 04, 2010 4:55 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
joemil
Moderador
Moderador


Registrado: Quinta-Feira, 25 de Março de 2004
Mensagens: 9099
Localização: Sinop-MT

MensagemEnviada: Qui Mar 04, 2010 4:17 pm    Assunto: Responder com Citação

coloque no uses: DateUtils

e faca assim:

Meses := MonthsBetween(Data1, Data2);
_________________
<b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
bonidog
Novato
Novato


Registrado: Terça-Feira, 15 de Setembro de 2009
Mensagens: 20

MensagemEnviada: Qui Mar 04, 2010 4:36 pm    Assunto: Responder com Citação

Hummm
eu declarei no uses certinho

e na hora de funcionar, deu um erro

coloque assim

DBEdit7 := MonthsBetween(DBEdit8, DBEdit9);

DBEdit7 é para aonde eu quero q vá o resultado (3)
sera que eu tenho que converter os DBEdits? e como faço isso.

Mas ele nãoe sta nem compilando, e esta dando o seguinte erro:

[Error] untIniciarExposicao.pas(97): Incompatible types: 'TDateTime' and 'TDBEdit'

obrigado pela ajuda

estou no aguardo.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
pestana
Colaborador
Colaborador


Registrado: Sábado, 25 de Junho de 2005
Mensagens: 3147
Localização: Araras-SP

MensagemEnviada: Qui Mar 04, 2010 4:44 pm    Assunto: Responder com Citação

DBEdit7.Fied.AsInteger:= MonthsBetween(DBEdit8.Field.AsDateTime,DBEdit9.Field.AsDateTime);
_________________
Ao invés de ficar desanimado no que deu de errado, olhe para frente, aprenda com os erros e veja o que ainda pode ser feito. A determinação e a persistência é uma das etapas para o sucesso.


Editado pela última vez por pestana em Qui Mar 04, 2010 4:46 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
joemil
Moderador
Moderador


Registrado: Quinta-Feira, 25 de Março de 2004
Mensagens: 9099
Localização: Sinop-MT

MensagemEnviada: Qui Mar 04, 2010 4:45 pm    Assunto: Responder com Citação

vc tem q gravar direto na tabela, e nao no dbedit, e o campo tem q ser integer

Table1.FieldByName('Campo_meses').Value := MonthsBetween(Data1, Data2);
_________________
<b>SEMPRE COLOQUE [RESOLVIDO] NO SEU POST</b>
Enviar imagens: http://tinypic.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
bonidog
Novato
Novato


Registrado: Terça-Feira, 15 de Setembro de 2009
Mensagens: 20

MensagemEnviada: Qui Mar 04, 2010 4:53 pm    Assunto: Responder com Citação

Tópico RESOLVIDO

Obrigado.
Tanto a dica do Pestana como a do Joemil funcionaram corretamente.

Obrigado Pessoal

Até +
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular MSN Messenger
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB