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 

O DB Grid não atualiza

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


Registrado: Sexta-Feira, 2 de Setembro de 2016
Mensagens: 17

MensagemEnviada: Ter Set 03, 2019 9:10 pm    Assunto: O DB Grid não atualiza Responder com Citação

Boa Noite,
Tenho a seguinte situação:
-Uma tabela AdoQuery que recebe o seguinte select: Setect * from funcionarios where codfun=:Parcdfunc
- A esta query esta ligado um datasource.
- tenho um formulário onde esta uma DBGRID ligada ao datasorce da tabela a cima.

A Situação é a seguinte: Quando eu passo o parametro pra tabela. Exemplo Tabela.Close;
Tabela.parameter.parambyname('Parcdfunc').value:=100
Tabela.Open;
Quando eu faço isto funciona beleza, a dbgrid traz certinho os dados da query, porem se eu executar o processo novamente e informar outro valor pro parametro Ex.

Tabela.Close;
Tabela.parameter.parambyname('Parcdfunc').value:=200
Tabela.Open;
Ai ocorre o problema, a eu ja trouxe os valores da query pra ver se ele esta atualizada e sim ela traz os valores atualizados. O Problema é a Dbgrid, ela permanece com os valores da primeira seleção, não importa o que eu faça, ja dei close open na tabela, ja dei ative=true e false, ja fiz uma série de coisas que achei nos foruns mas nada resolveu, alguem tem ideia do que eu posso fazer?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
ric_rio2
Novato
Novato


Registrado: Segunda-Feira, 1 de Outubro de 2018
Mensagens: 70

MensagemEnviada: Qua Set 04, 2019 6:45 am    Assunto: Responder com Citação

Bom dia amauri.alves tudo certinho??Smile
Cara a única coisa que vi de diferente é que tu fala de Query e da um close open em uma TABLE.. Se eu fosse chutar sem ver o form e o código eu diria que tu esta realmente usando dois objetos diferentes..
Se quiser mandar o form eu posso dar uma olhada com mais calma Smile
Qualquer coisa é só falar Smile
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: 8913
Localização: Sinop-MT

MensagemEnviada: Qua Set 04, 2019 8:42 am    Assunto: Responder com Citação

posta o codigo pra facilitar.

ta usando DisableControls/enableControls?
_________________
<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
amauri.alves
Novato
Novato


Registrado: Sexta-Feira, 2 de Setembro de 2016
Mensagens: 17

MensagemEnviada: Sáb Set 07, 2019 7:06 am    Assunto: Responder com Citação

Bom dia pessoal.
Não estou conseguindo postar o código ele me da um erro dizendo que não foi possivel passar a mensagem mas vereifiquei o seguinte.

Quando eu filtro os campos conforme eu disse no post ele alimenta todas as gris.

se eu dou um close nas tabelas ele limpa as grids.

se eu der novamente um open nas tabelas ele não realimenta as grids.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
amauri.alves
Novato
Novato


Registrado: Sexta-Feira, 2 de Setembro de 2016
Mensagens: 17

MensagemEnviada: Sáb Set 07, 2019 7:53 am    Assunto: Responder com Citação

Bom dia pessoal,
Consegui resolver da seguinte forma:

depois de dar close na tabela eu desabilito o datasourte Na dbgrid

Db_ResPro.DataSource.Enabled:=false;


Antes de dar open na tabela eu aponto novamente o datasource na dbgrid

Db_ResPro.DataSource:=DmAtbGerEst.DS_Qry_EstPro;

***********************************************************
o código ficou assim
***********************************************************
DmAtbGerEst.Qry_EstPro.Close;
Db_ResPro.DataSource.Enabled:=false;
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatIni01').Value:=StrToDate(ME_Dtaini.Text);
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatFim01').Value:=StrToDate(ME_Dtafim.Text);
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatIni02').Value:=StrToDate(ME_Dtaini.Text);
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatFim02').Value:=StrToDate(ME_Dtafim.Text);
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatIni03').Value:=StrToDate(ME_Dtaini.Text);
DmAtbGerEst.Qry_EstPro.Parameters.ParamByName('PrmDatFim03').Value:=StrToDate(ME_Dtafim.Text);
Db_ResPro.DataSource:=DmAtbGerEst.DS_Qry_EstPro;
DmAtbGerEst.Qry_EstPro.Open;
************************************************************
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular
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