Hi
We have a EP site with dashbaord which shows 5 ssrs reports.
3 of these reports are quick and good. But teh problem is with remaining 2 which have lot of data and also cross company data, so they render almost 30 to 50 secs later.
This is not good because dashboard is for senior management and these slow reports makes them impatient.
Is there a way where we can improve performance by having a batch process on the reports daily or even hourly and storing the result in a temporary table. So the reports that refreshes from the temporary table instead of directly from the database. Is this possible?
Please suggest a work around for this.
Report is built in an ideal way to get data quickly.
So I doubt the crosscompany code below. And as well it is good if batch processing or caching is paossible for teh dash board reports.
private void getUKCO()
{
LedgerTrans ledgerTrans;
CustTrans custTrans;
CustAccount account;
Decimals amount = 0;
container conCompanies = [ 'UKCO' ];
;
while select crossCompany : conCompanies sum(AmountMST) from ledgerTrans group by AccountNum
where ledgerTrans.AccountNum >= '700000' && ledgerTrans.AccountNum <= '800000'
|| ledgerTrans.AccountNum == '390000'
&& (ledgerTrans.TransDate >= str2date("01/01/" + int2str(year(systemDateGet())),123)
&& ledgerTrans.TransDate <= str2date(date2str(systemDateGet(),123,2,dateseparator::Slash,2,dateseparator::Slash,4),123))
{
amount += ledgerTrans.AmountMST;
}
account = "IR UK";
this.insertIncomeByDonorGroup(account, amount);
}
Regards,