×
INTELLIGENT WORK FORUMS
FOR COMPUTER PROFESSIONALS

Log In

Come Join Us!

Are you a
Computer / IT professional?
Join Tek-Tips Forums!
  • Talk With Other Members
  • Be Notified Of Responses
    To Your Posts
  • Keyword Search
  • One-Click Access To Your
    Favorite Forums
  • Automated Signatures
    On Your Posts
  • Best Of All, It's Free!
  • Students Click Here

*Tek-Tips's functionality depends on members receiving e-mail. By joining you are opting in to receive e-mail.

Posting Guidelines

Promoting, selling, recruiting, coursework and thesis posting is forbidden.

Students Click Here

Jobs

Refresh data problem

Refresh data problem

Refresh data problem

(OP)
Hi -

Recently just noticed a problem when it comes to data being refreshed across network when changes are made to data.

I am using Delphi 6, the generic Interbase components (TIBDatabase and TIBDataset for editing records)and Firebird.

While running 2 clients on the same network, I noticed that the other clients do not see changes made to the data.  I am using CommitRetaining when posting changes (because the user selects a record for editing from a DBGrid - and I would like to retain a cursor to the record being edited.)

I have created events in Interbase and respective alert components in the App itself. These KNOW that data has changed (using the messageBeep(0) function as a debug aid.) However, when I go to edit a record after changes have been made in another client - these changes are not always visible.

I know that closing the database component and then re-opening it can cause changes to be seen, but is there not a more elegant solution ? After all - it undermines the use of CommitRetaining to retain the current view of the data.

I would have thought that calling the Refresh method of TIBDataset would be a more appropriate method - but this does not seem to work in that way.

Anyway, any help would be greatly appreciated.

Cheers..

Opp.

RE: Refresh data problem

Hi Opp.
I suggest you to check the params that are set in your IBTransaction component.
You need to pick 'Read committed' option in the special dialg window or simply insert these params into IBTransaction.Params

 read_committed
 rec_version
 nowait

And after that you will see COMMITTED chages made by other users after refreshing your dataset.
lasta.

RE: Refresh data problem

(OP)
Thanks Lasta, that seems to work! Shame these properties are not surfaced out at the component level - may have saved myself a lot of time.

Anyway, thanks for your help - you been a great help.

Cheers..

Opp.


RE: Refresh data problem

No problems.
I was glad to help you.
lasta

Red Flag This Post

Please let us know here why this post is inappropriate. Reasons such as off-topic, duplicates, flames, illegal, vulgar, or students posting their homework.

Red Flag Submitted

Thank you for helping keep Tek-Tips Forums free from inappropriate posts.
The Tek-Tips staff will check this out and take appropriate action.

Reply To This Thread

Posting in the Tek-Tips forums is a member-only feature.

Click Here to join Tek-Tips and talk with other members! Already a Member? Login

Close Box

Join Tek-Tips® Today!

Join your peers on the Internet's largest technical computer professional community.
It's easy to join and it's free.

Here's Why Members Love Tek-Tips Forums:

Register now while it's still free!

Already a member? Close this window and log in.

Join Us             Close