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 

Filtrar em tabelas Mestre Detalhe - D7

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


Registrado: Terça-Feira, 27 de Julho de 2004
Mensagens: 812
Localização: Paulista - PE

MensagemEnviada: Sex Nov 26, 2021 12:22 pm    Assunto: Filtrar em tabelas Mestre Detalhe - D7 Responder com Citação

Pessoal, preciso fazer filtros em uma tabela detalhe.

fiz as conexões no DB, uso:

// Mestre
TSQLDataSet + TClientDataSet + TDataSoucer

// Detalhe
TSQLuery + TClientDataSet + TDataSoucer

Funciona tranuilo, muito bom. ao setar no registro Mestre o Detalhe mostra no DBGrid corretamente.

Mas, em tempo de execução preciso alterar as configurações de filtro, tipo: mostrar apenas os registros da data atual, ou de uma semana atrás. Ou apenas os de código 124 ...

Alguém sabe me dizer se já tem aqui no forum coisa igual ou me ajudar a desenvolver essa necessidade?
_________________
Conhecemos um grande homem pelas pequenas atitudes.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
natanbh1
Colaborador
Colaborador


Registrado: Terça-Feira, 15 de Março de 2011
Mensagens: 3093
Localização: Belo Horizonte - MG

MensagemEnviada: Sex Nov 26, 2021 12:46 pm    Assunto: Responder com Citação

Veja se o link abaixo ajuda:

https://www.devmedia.com.br/filtrando-tabela-master-pela-detalhe/19204
_________________
''A persistência é o caminho para o êxito.''
Charlie Chaplin
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Enviar E-mail
alexbandeira
Mestre
Mestre


Registrado: Terça-Feira, 27 de Julho de 2004
Mensagens: 812
Localização: Paulista - PE

MensagemEnviada: Sáb Nov 27, 2021 10:08 am    Assunto: Responder com Citação

Hummm, tudo indica que me ajuda sim. Apenas fiz uma leitura rápida. Vou testar, em breve retorno o resultado.

Grato pelo compartilhamento da informação. 🇧🇷
_________________
Conhecemos um grande homem pelas pequenas atitudes.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
alexbandeira
Mestre
Mestre


Registrado: Terça-Feira, 27 de Julho de 2004
Mensagens: 812
Localização: Paulista - PE

MensagemEnviada: Sáb Nov 27, 2021 2:05 pm    Assunto: Responder com Citação

Legal, deu certo.
Antes eu filtrava pela Qry, com isso o vínculo mestre/detalhe se perdia.

No entanto, estou com mais um problema no mesmo caso, só não consegui fazer funcionar com campo Date da tabela. Será que neste formato de filtro não se faz com campos tipo date?

Alguém pode me dar uma dica?

Código:

tabela.Filter := ‘CDATA BETWEEN ‘+quotedStr(FormarDateTime(‘de.mm.yyyy’,varDt)) ...


Gera o erro: ‘Filter expression incorrectly terminated’.

Coloquei o mês antes do dia, coloquei com “.” com “/“ com “-“, mas sempre dando o mesmo erro citado acima.

Tentei assim tbm:

Código:

tabela.Filter := ‘CDATA BETWEEN ‘+quotedStr(varDt) ...


Mas, como a variável e tipo date, nem copila.
_________________
Conhecemos um grande homem pelas pequenas atitudes.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
alexbandeira
Mestre
Mestre


Registrado: Terça-Feira, 27 de Julho de 2004
Mensagens: 812
Localização: Paulista - PE

MensagemEnviada: Sáb Nov 27, 2021 3:03 pm    Assunto: RESOLVIDO - filtro em mestre / detalhe. Responder com Citação

Em vez de BETWEEN usei os parâmetros (maior igual) e (menor igual).

Citação:

tabela.Filter := ‘CDATA >= ‘+quotedStr(FormatDateTime(‘dd/mm/yyyy’,varDt) ...


Está funcionando beleza.

Valeu pessoal, bom trabalho a todos. 🇧🇷
_________________
Conhecemos um grande homem pelas pequenas atitudes.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
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