Atualizar apenas 1 registro
Olá a todos,
Uso Banco SQL Express com Conexão DBExpress.
Tenho um Select simples com left join. Até ai tudo bem.
O que acontece é que quando dou um apply em 1 registro e clico no botão de imprimir pedido, o campo do left join não aparece. Eu preciso sair do form e entrar de novo para atualizar.
Também dei um TClientDataSet(DBGrid.DataSource.DataSet).Refresh. Dessa forma funciona, porém ele atualiza a tabela inteira e posiciona o ponteiro no primeiro registro.
Pensei em criar um bookMark e depois voltar para o registro, mas isso em 1 tabela grande não deixaria o processo lento?
Gostaria de saber como vocês contornariam esse problema.
Aguardo,
Carlos Júnior
Curtidas 0
Respostas
João Sobrinho
02/09/2010
Colega, pesquise sobre RefreshRecord, deve resolver o problema.
GOSTEI 0
Carlos Júnior
02/09/2010
Já tentei usar o refreshRecord, mas naum resolveu
Aguardo,
GOSTEI 0
Eriley Barbosa
02/09/2010
Você tem na sua tela um campo que no seu sql ele resulta de um left join e quando você atualiza este campo some, se for isso eu nunca tive problemas com a atualização e este campo não pode sumir, se você configurar a propriedade providerFlags corretamente, tanto para o sqldataset ou sqlquery e clientdataset corretamente.
Para campos que vem de um left join, as subpropriedades de providerFlags(pfInfKey, pfWhere,pfUpdate, pfHiden, devem estar todas False) tanto para o sqldataset ou sqlquery e clientdataset.
GOSTEI 0