Nikita6003
Programmer
Hi all,
I have a funny little problem with one of the Excel tools we wrote to extract & report dataq from a Sybase (system 11) database. It's not a majow issue at the moment, but might become so in the not-too-distant future, so any thoughts/solutions welcome ... !
The tool has two types of reporting: a summary showing totals per currency, and a detail section showing the totals per currency per time period.
The summary looks like this:
USD EUR GBP AUD ...
Place1 1234 8712 3210 5674
Place2 6543 1113 789 344
...
etc
and is created in a rather roundabout way. The tool used to be based on an Access database, and we used the Access crosstab query to generate these summary pages - easy & quick.
However, TRANSFORM not being a standard SQL statement, we were a bit stuck when the move to Sybase was proposed. So we found a solution (a bit of a fudge!) We're using Excel's crosstab wizard & passing it a connect string to sybase & the execute command for the appropriate Sybase stored procedure. The crosstab generated includes ALL data for the reports we're generating (65 in total), but not all data is used in all reports. We then wrote a sub using Excel's FIND method to find the totals we're looking for & reporting the result on a separate report sheet.
Now here's the problem: when Excel's the topmost window this works fine, and is very fast (although not optimal! but unfortunately we've got a code-freeze for the next few months). When Excel is NOT the topmost window, the report grinds on very sloooowly (timings for a 3MB report are 13 minutes when Excel is topmost, up to one and a half hours when it isn't - I kid you not!)
Has anyone heard of this phenomenon?!?
It's not an issue now because there is a spare PC on which we run the reports, BUT when the new guy arrives he'll have to use this PC so there's no spares left.
Your thoughts, please! ;-)
Cheers & thanks
Nikki
I have a funny little problem with one of the Excel tools we wrote to extract & report dataq from a Sybase (system 11) database. It's not a majow issue at the moment, but might become so in the not-too-distant future, so any thoughts/solutions welcome ... !
The tool has two types of reporting: a summary showing totals per currency, and a detail section showing the totals per currency per time period.
The summary looks like this:
USD EUR GBP AUD ...
Place1 1234 8712 3210 5674
Place2 6543 1113 789 344
...
etc
and is created in a rather roundabout way. The tool used to be based on an Access database, and we used the Access crosstab query to generate these summary pages - easy & quick.
However, TRANSFORM not being a standard SQL statement, we were a bit stuck when the move to Sybase was proposed. So we found a solution (a bit of a fudge!) We're using Excel's crosstab wizard & passing it a connect string to sybase & the execute command for the appropriate Sybase stored procedure. The crosstab generated includes ALL data for the reports we're generating (65 in total), but not all data is used in all reports. We then wrote a sub using Excel's FIND method to find the totals we're looking for & reporting the result on a separate report sheet.
Now here's the problem: when Excel's the topmost window this works fine, and is very fast (although not optimal! but unfortunately we've got a code-freeze for the next few months). When Excel is NOT the topmost window, the report grinds on very sloooowly (timings for a 3MB report are 13 minutes when Excel is topmost, up to one and a half hours when it isn't - I kid you not!)
Has anyone heard of this phenomenon?!?
It's not an issue now because there is a spare PC on which we run the reports, BUT when the new guy arrives he'll have to use this PC so there's no spares left.
Your thoughts, please! ;-)
Cheers & thanks
Nikki