Jump to content
Fórum Script Brasil
  • 0

Atualizando campos SQL sem dar REFRESH


SCIENTIST

Question

Bom dia, tenho a seguinte situação: Uma Tabela PRODUTOS, onde nesta tabela tenho um campo VALOR e outra PERCENT.

Dessa forma fazemos o seguinte SQL: "SELECT P.*, (P.VALOR*(P.PERCENT/100)) AS NOVO_VALOR FROM PRODUTO".

Até aqui tudo bem, porém no ClientDataSet todos esses campos ficam em memória e só são atualizados novamente após um REFRESH, o que demanda tempo e deixa o sistema lento. Então imagine se o usuário altera o valor do produto ou do percent o valor NOVO_VALOR que foi calculado no SQL não irá mudar até que seja dado um REFRESH.

Então, como fazer isso sem dar um REFRESH em toda a tabela ?

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

experimente

The following AfterScroll event handler refreshes the current record every time the user moves to a new record, ensuring the most up-to-date value. Before refreshing a record, however, it checks the update status to avoid refreshing records that have been edited, which would potentially mask update errors.

procedure TForm1.ClientDataSet1AfterScroll(DataSet: TDataSet);
begin
  if ClientDataSet1.UpdateStatus = usUnModified then
    ClientDataSet1.RefreshRecord;
end;

abraço

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...