Citrix + Crystal Reports

Hi All,

Production:
Citrix -> Fat Client -> embedded crystal report

We're getting complaints that reports in our production environment are taking 10 to 15 minutes to complete regardless of the number of runs.

QA:
RDP -> Fat Client -> Embedded Crystal Report

When we run this in QA (local, on a server, but no citrix) same report with similiar data takes a few seconds.  

Unfortunately being a developer I don't have access to production or inside knowledge about the citrix environment (handled by another team).  


I'm looking for documentation that says this is expected behavior or a list of possible fixes that can be implemented to speed up production.  Has anyone seen anything ilke this before or anything I can provide up the ladder to get this resolved?
LVL 42
Kyle AbrahamsSenior .Net DeveloperAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Mohamed OsamaSenior IT ConsultantCommented:
Crystal will use the %TEMP% folder to run the file, Please check with your Citrix admins that the users %TEMP% folder is cleared, I have seen in some Citrix servers Gigabytes upon Gigabytes and tens of thousands of files on the users %TEMP% folders that can significantly slow down things.
0
Ido MilletProfessor of MIS at Penn State Erie and Owner, Millet SoftwareCommented:
No, this is not an expected behavior for Citrix deployments.  
My Crystal Reports Viewer application has been running on many Citrix installations and I've never seen this problem.  
Do you see this slow down with all reports?  Always or only during certain times of the day?
0
Kyle AbrahamsSenior .Net DeveloperAuthor Commented:
New info is it's one main report.  We're doing deltas between that and a working report to see what's going on.  

Slowness is consistent regardless of time of day or specific parameters used.  

I'm playing telephone through a bunch of different levels but that's what I'm getting back so far.

Please keep the suggestions coming.
0
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

Ido MilletProfessor of MIS at Penn State Erie and Owner, Millet SoftwareCommented:
The "slow" report has subreports?
0
Kyle AbrahamsSenior .Net DeveloperAuthor Commented:
>> Does the "slow" report have any subreports?
 - None.  


I was finally able to see this run in Citrix . . .

Our process is to build the data table outside of crystal . . . and handle crystal the dataset for formatting purposes.

We do this using a background worker so we can report progress as we go.  

It's hanging here:
      worker.ReportProgress(50)

                               rptDocument.SetDataSource(m_DataTable)

                                If worker.CancellationPending Then
                                    e.Cancel = True
                                    Exit Sub
                                End If
    worker.ReportProgress(75)

Time to dive into the actual crystal report.  Note the same process is used for the "working" report.  

Noticeable difference so far is that the "slow" report has a number of formulas (10-20) some of them used some of them not.  Does crystal calculate them all if they aren't being used?  

Will keep reporting as I go, thanks for the suggestions and looking forward to more ideas.
0
Kyle AbrahamsSenior .Net DeveloperAuthor Commented:
One other thing:  We can run the program fine on the actual citrix server without issue.  It's only when the presentation framework is working on the client that this becomes an issue.
0
Kyle AbrahamsSenior .Net DeveloperAuthor Commented:
So the issue ended up being that the default source was set to our test server.  Even though we were providing the datatable to the report manually it still for some reason was requerying the database.

The solution was to create an XSD (Disconnected DataSet) mimicking the columns that the report needed, and then repointing the report to look at the XSD.  Once this was done the report queries the blank XSD, then gets the data from the data table we are passing to it, and thereby solving the problem.  

I guess this could also be done with SetDataBase Logon, but why it would query the DB if we're already providing it a data table is beyond me.  Thanks very much for the suggestions.
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
Kyle AbrahamsSenior .Net DeveloperAuthor Commented:
Found the solution on my own, suggestions were valid though not accurate.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Citrix

From novice to tech pro — start learning today.