Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
pipeloko Novato
![Novato Novato](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star1.gif)
Registrado: Domingo, 13 de Junho de 2010 Mensagens: 4
|
Enviada: Sex Jun 18, 2010 10:44 pm Assunto: Filtrar entre datas |
|
|
Oi.
Sou iniciante no delphi e queria fazer uma coisa aqui funcionar.
Código: |
[b]DM.CDSlancamentos.IndexName:= 'ind_data';[/b]
DM.CDSlancamentos.SetRangeStart;
DM.CDSlancamentos.FieldByName('data_lancamento').AsString := Edit1.Text;
DM.CDSlancamentos.SetRangeEnd;
DM.CDSlancamentos.FieldByNAme('data_lancamento').AsString := Edit2.Text
|
DM = nome do DataModule
CDSlancamentos = Client Data set (tabela)
Bom, este é um filtro que seleciona os "dias" registrados entre a data incial e a data final.
OK.
Mas a minha dificuldade é que ainda não entendi muito bem como funciona o IndexName e como faço para criá-lo.
Alguem consegue me explicar como faço para fazer funcionar?
código retirado de: http://www.planetadelphi.com.br/dica/5761/filtrar-uma-tabela-por-um-intervalo-de-datas |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
adriano_servitec Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sex Jun 18, 2010 10:54 pm Assunto: Re: Filtrar entre datas |
|
|
pipeloko escreveu: | Oi.
Sou iniciante no delphi e queria fazer uma coisa aqui funcionar.
Código: |
[b]DM.CDSlancamentos.IndexName:= 'ind_data';[/b]
DM.CDSlancamentos.SetRangeStart;
DM.CDSlancamentos.FieldByName('data_lancamento').AsString := Edit1.Text;
DM.CDSlancamentos.SetRangeEnd;
DM.CDSlancamentos.FieldByNAme('data_lancamento').AsString := Edit2.Text
|
DM = nome do DataModule
CDSlancamentos = Client Data set (tabela)
Bom, este é um filtro que seleciona os "dias" registrados entre a data incial e a data final.
OK.
Mas a minha dificuldade é que ainda não entendi muito bem como funciona o IndexName e como faço para criá-lo.
Alguem consegue me explicar como faço para fazer funcionar?
código retirado de: http://www.planetadelphi.com.br/dica/5761/filtrar-uma-tabela-por-um-intervalo-de-datas | Qual banco de dados vc usa?
Acho melhor vc optar por um query para a consulta utilizando linguagem SQL.
Este IndexName serve apenas para campos indexados.
Com select é mais simples e melhor desempenho
exemplo
Código: |
select * from trabela
where campodata between :dataini and :datafin |
No aplicativo
Código: | with query do
begin
close;
params[0].asdate := datetostr(edit1.text);
params[1].asdate := datetostr(edit2.text);
open;
end; |
_________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
pipeloko Novato
![Novato Novato](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star1.gif)
Registrado: Domingo, 13 de Junho de 2010 Mensagens: 4
|
Enviada: Sex Jun 18, 2010 11:31 pm Assunto: |
|
|
Não estou usando Banco de dados, só o DataModule do programa mesmo.
Não tem como usar SQL Aqui. Não tem uma maneira de fazer isso sem usar SQL?
(Se eu pudesse usar sql, já teria usado, mas não posso :s ) |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
rafmattos Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Quinta-Feira, 11 de Fevereiro de 2010 Mensagens: 3416 Localização: Campo Grande/MS
|
Enviada: Sáb Jun 19, 2010 1:40 am Assunto: |
|
|
pipeloko escreveu: | Não estou usando Banco de dados, só o DataModule do programa mesmo.
Não tem como usar SQL Aqui. Não tem uma maneira de fazer isso sem usar SQL?
(Se eu pudesse usar sql, já teria usado, mas não posso :s ) |
não entendi, vc ta gravando os dados a onde? |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
pipeloko Novato
![Novato Novato](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star1.gif)
Registrado: Domingo, 13 de Junho de 2010 Mensagens: 4
|
Enviada: Sáb Jun 19, 2010 10:41 am Assunto: |
|
|
Estou Gravando os dados num DataModule.
E neste caso, no ClientDataSet chamado "CDSlancamentos". |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
johnny-walker Moderador
![Moderador Moderador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/moderador.gif)
![](images/avatars/2653151408207b54dc.gif)
Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Dom Jun 20, 2010 12:45 pm Assunto: |
|
|
vc está utilizando xml datapacket, neste caso é possível trabalhar com ranges...
Neste caso vc tem de deffinir no cds os seguintes comandos de definição de faixa:
Código: |
//Definir a faixa de datas
Cds.IndexFieldNames := 'DATA1';
Cds.CancelRange;
Cds.Filtered := False;
Cds.SetRange([DATA_INI], [DATA_FIN]);
Cds.SetRangeStart;
Cds.FieldByName('DATA_INI').AsDateTime := DATA_INI;
Cds.SetRangeEnd;
Cds.FieldByName('DATA_FIM').AsDateTime := DATA_FIN;
Cds.ApplyRange;
|
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
pipeloko Novato
![Novato Novato](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star1.gif)
Registrado: Domingo, 13 de Junho de 2010 Mensagens: 4
|
Enviada: Dom Jun 20, 2010 6:57 pm Assunto: |
|
|
Rá!
Valeu ae!
Modifiquei um pouco o código, agora to conseguindo fazer a pesquisa! |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
johnny-walker Moderador
![Moderador Moderador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/moderador.gif)
![](images/avatars/2653151408207b54dc.gif)
Registrado: Sábado, 4 de Outubro de 2003 Mensagens: 10653 Localização: Contagem/MG - BRAZIL
|
Enviada: Seg Jun 21, 2010 9:58 am Assunto: |
|
|
Disponha amigo...
bye _________________ P.O.W.E.R B.Y D.E.L.P.H.I |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
je_mugica Novato
![Novato Novato](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star1.gif)
Registrado: Segunda-Feira, 7 de Junho de 2010 Mensagens: 46
|
Enviada: Seg Jun 21, 2010 11:11 am Assunto: duvida |
|
|
o post do adriano_servitec da para ser usado com o bd access?
e se da pq da erro no params?
inté |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
adriano_servitec Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
|