Icon View Thread

The following is the text of the current message along with any replies.
Messages 1 to 3 of 3 total
Thread The dreaded word: speed
Mon, Nov 23 2009 9:43 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

I'm using ElevateDB and the TMS controls, especially the TAdvStringGrid and TDBAdvStringGrid (PageMode := True Smiley. On several of the forms there's a lot going on for each record move eg on the companies page a list of present and past employees is extracted. Activity information (orders, introductions, projects) is extracted, contact history is extracted etc etc

I know its going to be slowish because of this but my gut reaction is that its slower than I would expect if using standard DBGrid and stringgrid. I know there's a penalty to be paid for the enhanced display and capabilities but I just wondered what other people's opinions who were using both component sets (TMS & ElevateDB) were.

Roy Lambert
Wed, Nov 25 2009 5:49 PMPermanent Link

"Adam H."
Hi Roy,

> I'm using ElevateDB and the TMS controls, especially the TAdvStringGrid and TDBAdvStringGrid (PageMode := True Smiley. On several of the forms there's a lot going on for each record move eg on the companies page a list of present and past employees is extracted. Activity information (orders, introductions, projects) is extracted, contact history is extracted etc etc
>
> I know its going to be slowish because of this but my gut reaction is that its slower than I would expect if using standard DBGrid and stringgrid. I know there's a penalty to be paid for the enhanced display and capabilities but I just wondered what other people's opinions who were using both component sets (TMS & ElevateDB) were.

I don't use TMS, but I do use Devexpress components and am in a similar
boat. Basically I've found that I need to put up with the speed issues
if I want the functionality.

With Quantumgrid for instance, they do have a 'gridmode' property, and
when switched to TRUE it functions like a normal grid. (Much faster, but
you lose the option to sort, filter, etc).

I did suggest a few years ago that they have an option for a 'smart grid
mode' property, which would effectively work in gridmode until the user
wanted to use some other functions (like initiate a sort, filter, etc) -
and THEN it would switch the grid's gridmode property to false and load
all the records in memory.

The idea was that users who only use the extra functions 5% of the time
wouldn't be penalised the other 95% of the time with speed hits, but I
haven't seen any development since.

On a different note - as my application uses pagecontrols - I've noticed
that performance hits also come when using standard components (such as
TcxDBLookupCombo) boxes regardless of which tab is currently being
viewed - so if I don't have those components linked to any lookup
databases until they need to be used (ie come into view when 'their'
page control becomes active), I spread out the performance hits into
smaller chunks at different events throughout the application, which
makes the users experience seem much faster.

Not sure if any of this is of any help, or if I'm rambling on - hope it
helps though. Smile

Cheers

Adam.
Thu, Nov 26 2009 2:53 AMPermanent Link

Roy Lambert

NLH Associates

Team Elevate Team Elevate

Adam

>I don't use TMS, but I do use Devexpress components and am in a similar
>boat. Basically I've found that I need to put up with the speed issues
>if I want the functionality.

>With Quantumgrid for instance, they do have a 'gridmode' property, and
>when switched to TRUE it functions like a normal grid. (Much faster, but
>you lose the option to sort, filter, etc).

So does TMS (PageMode) with similar problems.

>The idea was that users who only use the extra functions 5% of the time
>wouldn't be penalised the other 95% of the time with speed hits, but I
>haven't seen any development since.

Good idea, you can essentially do that with TMS by setting PageMode to false. Problem then is that you've lost the link to the underlying dataset and have to have fields in the grid (hidden or visible) so that you can navigate the dataset.

I want mainly the prettiness and sorting features the rest I'm not to interested in. Since I have the source, and I decided not to renew my subscription I may just have a major hack at the code some time.

>On a different note - as my application uses pagecontrols - I've noticed
>that performance hits also come when using standard components (such as
>TcxDBLookupCombo) boxes regardless of which tab is currently being
>viewed - so if I don't have those components linked to any lookup
>databases until they need to be used (ie come into view when 'their'
>page control becomes active), I spread out the performance hits into
>smaller chunks at different events throughout the application, which
>makes the users experience seem much faster.

Interesting point. Mine also uses pagecontrols (TAdvOfficePager) and I embed forms into the pages to provide a nice UI.

The other thing that's annoying, understandable but annoying, is that three things account for most of my app footprint, ElevateDB, WPTools and TMS. On the other hand since I'm currently running with MadExcept and TDB32 debug info built in who notices Smiley

Roy Lambert
Image