on 07-10-2013 9:43 PM
I've created a winforms application in Visual Studio 2010 .NET 4.0 using SAP crystal reports for Visual Studio 2010. When deploying the application to a Citrix server, we can't get the report to open. We get this error:
See the end of this message for details on invoking
just-in-time (JIT) debugging instead of this dialog box.
************** Exception Text **************
CrystalDecisions.Shared.CrystalReportsException: Load report failed. ---> System.Runtime.InteropServices.COMException: The system cannot find the path specified.
at CrystalDecisions.ReportAppServer.ClientDoc.ReportClientDocumentClass.Open(Object& DocumentPath, Int32 Options)
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.Open(Object& DocumentPath, Int32 Options)
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
--- End of inner exception stack trace ---
at CrystalDecisions.ReportAppServer.ReportClientDocumentWrapper.EnsureDocumentIsOpened()
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename, OpenReportMethod openMethod, Int16 parentJob)
at CrystalDecisions.CrystalReports.Engine.ReportDocument.Load(String filename)
at HierarchyBrowserWin.WODetailReport..ctor(String sWONO)
at HierarchyBrowserWin.AssetViewer.dataGridEvents_CellClick(Object sender, DataGridViewCellEventArgs e)
at System.Windows.Forms.DataGridView.OnCellClick(DataGridViewCellEventArgs e)
at System.Windows.Forms.DataGridView.OnMouseClick(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at System.Windows.Forms.DataGridView.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)
************** Loaded Assemblies **************
mscorlib
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///M:/WINDOWS/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll
----------------------------------------
HierarchyBrowserWin
Assembly Version: 1.0.0.0
Win32 Version: 1.0.0.0
CodeBase: file:///N:/HiearchyWinDistribute/HierarchyBrowserWin.exe
----------------------------------------
System.Windows.Forms
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e0...
----------------------------------------
System.Drawing
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/Sys...
----------------------------------------
System
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll
----------------------------------------
Oracle.DataAccess
Assembly Version: 9.2.0.700
Win32 Version: 9.2.0.700
CodeBase: file:///M:/WINDOWS/assembly/GAC/Oracle.DataAccess/9.2.0.700__89b483f429c47342/Oracle.DataAccess.dll
----------------------------------------
System.Data
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Data/v4.0_4.0.0.0__b77a5c561934e089/System.D...
----------------------------------------
System.Core
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System...
----------------------------------------
System.Configuration
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a...
----------------------------------------
System.Xml
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System....
----------------------------------------
System.EnterpriseServices
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 (RTMRel.030319-0100)
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.EnterpriseServices/v4.0_4.0.0.0__b03f5f7f11d...
----------------------------------------
System.Numerics
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Numerics/v4.0_4.0.0.0__b77a5c561934e089/Sy...
----------------------------------------
CrystalDecisions.CrystalReports.Engine
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.CrystalReports.Engine/13.0.2000.0__692fbea5521...
----------------------------------------
CrystalDecisions.Shared
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.Shared/13.0.2000.0__692fbea5521e1304/CrystalDe...
----------------------------------------
CrystalDecisions.Windows.Forms
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.Windows.Forms/13.0.2000.0__692fbea5521e1304/Cr...
----------------------------------------
CrystalDecisions.ReportSource
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportSource/13.0.2000.0__692fbea5521e1304/Cry...
----------------------------------------
System.Web
Assembly Version: 4.0.0.0
Win32 Version: 4.0.30319.1 built by: RTMRel
CodeBase: file:///M:/WINDOWS/Microsoft.Net/assembly/GAC_32/System.Web/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.We...
----------------------------------------
log4net
Assembly Version: 1.2.10.0
Win32 Version: 1.2.10.0
CodeBase: file:///M:/WINDOWS/assembly/GAC_32/log4net/1.2.10.0__692fbea5521e1304/log4net.dll
----------------------------------------
CrystalDecisions.ReportAppServer.CommLayer
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.CommLayer/13.0.2000.0__692fbea...
----------------------------------------
CrystalDecisions.ReportAppServer.ClientDoc
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.ClientDoc/13.0.2000.0__692fbea...
----------------------------------------
CrystalDecisions.ReportAppServer.DataDefModel
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.DataDefModel/13.0.2000.0__692f...
----------------------------------------
CrystalDecisions.ReportAppServer.CubeDefModel
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.CubeDefModel/13.0.2000.0__692f...
----------------------------------------
CrystalDecisions.ReportAppServer.ReportDefModel
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.ReportDefModel/13.0.2000.0__69...
----------------------------------------
CrystalDecisions.ReportAppServer.Controllers
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.Controllers/13.0.2000.0__692fb...
----------------------------------------
CrystalDecisions.ReportAppServer.DataSetConversion
Assembly Version: 13.0.2000.0
Win32 Version: 13.0.2.469
CodeBase: file:///M:/WINDOWS/assembly/GAC_MSIL/CrystalDecisions.ReportAppServer.DataSetConversion/13.0.2000.0_...
----------------------------------------
************** JIT Debugging **************
To enable just-in-time (JIT) debugging, the .config file for this
application or computer (machine.config) must have the
jitDebugging value set in the system.windows.forms section.
The application must also be compiled with debugging
enabled.
For example:
<configuration>
<system.windows.forms jitDebugging="true" />
</configuration>
When JIT debugging is enabled, any unhandled exception
will be sent to the JIT debugger registered on the computer
rather than be handled by this dialog box.
The report is located in the same folder as our application executable. We have loaded the 13.0.2 msi file on the citrix server. We saw an article about needing to add a "ReportDirectoryPath" entry in the registry, we saw articles on permissions so we added the network service user to the m:/ drive and gave it full permissions and did the same for the ASPNET user but none of these worked.
Hello Bobbie
First, ensure you are using SP 6. This document has links to SP 6 and it's runtimes.
Next, possibilities re. the error:
1) The report path is incorrect
2) The user does not have permissions on the folder where the report exists
3) The user does not have permissions on the %TEMP% folder
After updating the runtime top SP6, are you able to run the report on the server it's self?
- Ludek
Senior Support Engineer AGS Product Support, Global Support Center Canada
Follow us on Twitter
Got Enhancement ideas? Try the SAP Idea Place
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Thank you Ludek. Sorry for the delay. We had trouble getting SP6 installed on the Citrix server but have worked through those issues. We are still having the issue but I want to make sure I've got SP6 installed correctly. On the development machine, we also installed SP6, but when I look at references in the visual studio project, the version of the crystal files still says 13.0.2, run time version 2.0.50727. Do I need to re-add the crystal files to the project? We installed SP6 on the citrix server but the report still isn't working there, do I need a new executable from development or should it work just with the SP installed?
Hi Bobby,
The assembly version does not change, just the file version, makes it easier to manage. If you look in the GAC and view the properties you can verify the version is 13.0.6.xxx to be sure it was updated.
Also check Citrix Forums, there are known issues and limitation that Microsoft has found that may be related. Try searching this forum also, I believe there are links to Citrix's forum on the issues.
Don
Bobbie, Don's suggestion is good. Also, to me this looks more like permission issues than anything else. That's why I was wondering if this works if you sit right on the server it's self - usually the permission issues don't get in the way there. One way to check on permission issues, is to use Process Monitorand then look for "Access Denied" errors in the Procmom logs.
- Ludek
I'm getting the error below when I try to open it:
Please upload the file to the ftp container here:
https://sapmats-us.sap-ag.de/upload/index.cgi?id=CVYWGCUJECML1JLZ8GZP1MLIIOGULZSSJHUTM6TX8KX2CMS5SY
(You'll have to zip it up - no renaming)
- Ludek
Hi Bobbie
Sorry, I had a reply typed yesterday, then I had to run as I was late for my train and of course, everything was forgotten.
Looking at the log, I see the report file being loaded, saved to a temp directory read, and closed. So the error does not make much sense. Now, looking at the working directory (I think it's in M:\) makes me wonder if we want to modify the CommonFiles and Path settings in the registry:
HKEY_CURRENT_USER\Software\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports
You'll have to create the keys CommonFiles and Path and set them to M:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86. E.g.; this is what it looks like for CR 10.5:
- Ludek
I found a web post that said:
I needed to create a String Value in Regedit called ReportDirectoryPath with the value "M:\ in the same place where the is a String Value called ConnectionDirectoryPath
So I searched for ConnectionDirectoryPath, it was set to
M:/, so I added ReportDirectoryPath, set it to M:/ but still get same error.
Hi Bobby,
The is with Citrix permissions. From a user who is logged in can they save a file to the M Drive?
What Cr will do is attempt to use a folder by first trying to create a file by name and then delete it to confirm we have full read/write permissions. I beleive this is all under a Citrix permissions problem.
Please search on Cirtix's forum, they do have known issues. Here is one instance to get you started:
http://forums.citrix.com/thread.jspa?threadID=102299
Don
Looking at the error message, I am pretty sure this is a 32 bit app(?). If is is compiled as 64 bit or possibly "Any CPU", most of my musings below go out the window...
Going by this blog: Crystal Reports on Citrix Server
I feel that we are on the correct "path" to a resolution. So, taking the content of the above and modifying for CRVS (I realize you've done pretty much everything in the below, but double check):
1.Locate and expand HKEY_LOCAL_MACHINE\SOFTWARE \SAP BusinesObjects\Crystal Reports for .NET Framework 4.0\
2.Right-click the 'ConnectionDirectoryPath' string value, then click 'Modify'.
3.In the 'Value data' text box, change "c:\" to the root drive letter of the Citrix server and then Click 'OK'.
I am not sure if we need to go from the root drive (e.g.; M:\, or the path where the CR runtime is installed (in our case; M:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86)
4.Right-click the 'LocalConnectionMgr' subkey, click 'New' then click 'String Value'.
5.Name this String Value "ReportDirectoryPath".
6.Right-click the 'ReportDirectoryPath' string value and click 'Modify'.
7.In the 'Value data' text box, type the same drive letter as you typed in step 3.
Now, once the above is checked and double checked and if it still does not work, let's throw ProcMon at it one more time. It will be interesting to see if the CR engine looks at those keys. If it does not, this may be a bug..., may be...
Another thought; Any messages in the Event Viewer?
And as Don mentioned a while back:
Also check Citrix Forums, there are known issues and limitation that Microsoft has found that may be related.
But irrespective, please Bobbie keep me in the loop. If you want me to have a look at the ProMon logs, let me know and I'll set up another ftp container.
- Ludek
Yay Ludek, you got it! I added "ReportDirectoryPath" with a value of m:\ to the LocalConnectionMgr subkey under:
HKEY_LOCAL_MACHINE\SOFTWARE\SAP BUSINESSObjects\Crystal Reports for .NET Framework 4.0\Report Application Server\InprocServer
And my reports now open!! Thanks for hanging in there with me!
We have someone experiencing this same issue, but it is not every user who connects to the citrix server that is having this issue.
We added key ConnectionDirectoryPath with string value of m: as the key did not exist under HKEY_LOCAL_MACHINE\SOFTWARE \SAP BusinesObjects\Crystal Reports for .NET Framework 4.0\
and we set the "ReportDirectoryPath" to a value of m:\ to the LocalConnectionMgr subkey under: HKEY_LOCAL_MACHINE\SOFTWARE\SAP BUSINESSObjects\Crystal Reports for .NET Framework 4.0\Report Application Server\InprocServer
Still no luck...get Load Report Failed.
This is using CRDevforVS SP6 and corresponding runtime. App is compiled as 32-bit (x86) and citrix is a 32-bit server
If we do not have the registry keys (above) correct, can you please spell the full path out. Citrix mapped drive is definitely M:
Thank you
User | Count |
---|---|
76 | |
9 | |
8 | |
7 | |
6 | |
5 | |
5 | |
5 | |
5 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.