Recent

Author Topic: Is there an IBX component that acts as an "In Memory" dataset, like TBufDataset?  (Read 2190 times)

RedOctober

  • Sr. Member
  • ****
  • Posts: 452
I have found that FBAdmin is just too buggy at the moment to use in my project and I have to start over with IBX.  The only thing that seems to be missing from IBX is an "in-memory" dataset like a TClientDataset in Delphi, or a TBufDataset in SQLdb.  Is there one?

dsiders

  • Hero Member
  • *****
  • Posts: 1052
The only thing that seems to be missing from IBX is an "in-memory" dataset like a TClientDataset in Delphi, or a TBufDataset in SQLdb.  Is there one?

No. But TIBDataset and TIQuery both have filtering and ordering provided by their built-in Parser property. It allows you to dynamically modify the WHERE, HAVING, and ORDER BY clauses in a SQL select statement. The parser is also used in the controls provided by the package.

A couple of demos are provided too. See the Docs in Chapter 7.3 - The SQL Parser.

I suppose TBufDataset could still be used to actually store local copies of TIBQuery or TIBDataset data, if that's what you really need.

---
Don
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

RedOctober

  • Sr. Member
  • ****
  • Posts: 452
Hi dsiders, I was thinking to use an in-memory dataset to hold temporary data that has no connection whatever to the back end database.  Just a place to tuck things that has fields, indexing, .Locate(), .Lookup() .SaveToFile() etc.

dsiders

  • Hero Member
  • *****
  • Posts: 1052
Hi dsiders, I was thinking to use an in-memory dataset to hold temporary data that has no connection whatever to the back end database.  Just a place to tuck things that has fields, indexing, .Locate(), .Lookup() .SaveToFile() etc.

That's what TBufDataset is good at - without using SQL, Firebird, or FBAdmin. So, I guess that I really don't understand why you're looking an equivalent in IBX. TBufDataset is not SQL-based and doesn't use a database connection... just a file name.
Preview Lazarus 3.99 documentation at: https://dsiders.gitlab.io/lazdocsnext

RedOctober

  • Sr. Member
  • ****
  • Posts: 452
You are correct dsiders.  Thank you.  My confusion.  I will use TBufDataset.  I mistakenly thought that TBufDataset was part of SQLDb.  Problem solved.

 

TinyPortal © 2005-2018