![]() |
Willing to pay for Report Control help |
Post Reply ![]() |
Author | |
wrecks ![]() Groupie ![]() Joined: 14 July 2015 Status: Offline Points: 42 |
![]() ![]() ![]() ![]() ![]() Posted: 29 September 2020 at 11:31am |
I am having trouble with the ActiveX version of the Codejock Report Control. It works great, but the performance is unacceptable. Adding 188 records with 5 items each (940 items) takes almost 3 seconds on my very fast Windows 10 PC. I have tried the UseBatchAllocation method, but that does not seem to make any difference.
There is very little activity on this forum. Is there anybody watching that is good at this and would like to get paid for helping...?
|
|
![]() |
|
jpbro ![]() Senior Member ![]() ![]() Joined: 12 January 2007 Status: Offline Points: 1354 |
![]() ![]() ![]() ![]() ![]() |
What language are you using? Can you post a code sample?
|
|
Product: Xtreme SuitePro (ActiveX) version 16.2.6
Platform: Windows XP - SP3 Language: Visual Basic 6.0 SP6 |
|
![]() |
|
rdhd ![]() Senior Member ![]() ![]() Joined: 13 August 2007 Location: United States Status: Offline Points: 871 |
![]() ![]() ![]() ![]() ![]() |
Can you disable window updating? We have issues with Windows comboboxes that appeared out of nowhere. We did a couple of things. The combobox has an InitStorage call so we make it when we know how many items we are going to add. We also call SetRedraw to false before loading the box and back to true when we are done. If not MFC based, use the WM_SETREDRAW message, which is all MFC does, before loading and after loading. I have seen very slow updates in a .NET grid view and it too was caused by display updating occurring as each item was added to the view. It becomes so slow you can easily watch it "grow" as rows are added. Simply resizing the window so it is short revealed it was all display based. I'd run Spyxx and see what messages are streaming as you make your calls. Look first to see if it is redrawing - WM_PAINT, WM_ERASEBKGND.
|
|
![]() |
|
wrecks ![]() Groupie ![]() Joined: 14 July 2015 Status: Offline Points: 42 |
![]() ![]() ![]() ![]() ![]() |
It turns out that the ActiveX interface mechanism in my language (APL+Win) is the culprit. The same logic coded in a VB6 program runs apx. 100 times faster. Sigh.
We had not noticed this before because with other ActiveX controls we use (e.g., Excel) we can pass an array of data in one call. With the ReportControl, we have to use the AddItem method for each individual "cell". If only there were an AddItems (plural) method!
|
|
![]() |
Post Reply ![]() |
|
Tweet
|
Forum Jump | Forum Permissions ![]() You cannot post new topics in this forum You cannot reply to topics in this forum You cannot delete your posts in this forum You cannot edit your posts in this forum You cannot create polls in this forum You cannot vote in polls in this forum |