Symptoms

Report commander gives error "Cannot open report file: Load report failed" when you try to open a report that uses functions in a user function library (UFL). This error may occur when you try to open the report using the Report Commander Command Line Builder, or when you run Report Commander in command-line mode to export or print the report.

You may also see a message similar to the following:

An error occurred while checking for report data. Processing will continue, but empty output may be produced. (UFL 'uXXXXX.dll' that implements this function is missing.: UFL 'uXXXXX.dl)

Note: The "Load report failed" message is a generic error message from Crystal Reports and may occur due to other causes. This article applies only if the report uses user function libraries. For other possible causes of this message see article K00000339.

Resolution

Crystal Reports allows reports to call functions defined in user function libraries supplied by a third party. When you use the report, the user function DLL and any files it depends on must be present on the computer. If you are running Report Commander on a different computer than you developed the report on, these files may not be present.

To resolve this problem, you must determine which user function libraries your report depends on, and install or copy the necessary software on the computer where Report Commander is being run.

If the library is already present on the computer where Report Commander is running, you may need to copy the UFL DLL into the Crystal Reports runtime folder:

  • If you are running the 32-bit version of Report Commander, copy the UFL to "C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win32_x86"
  • If you are running the 64-bit version of Report Commander, copy the UFL to "C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win64_x64"

The "bitness" of the UFL must match the bitness of the Report Commander version you have installed. If your UFL is a 32-bit DLL, you must use the 32-bit version of Report Commander. If you have the 64-bit version of Report Commander installed, uninstall it and install the 32-bit version. Most UFLs will be 32-bit, because until recently there was no 64-bit version of Crystal Reports.

Note that the DLL named in the error message may not actually be the DLL that is missing. If the message refers to u2lcom.dll or u212com.dll, Crystal Reports is providing a misleading error message. Those DLLs are part of Crystal Reports and are not the problem. You will need to refer to the design of your report to determine what the missing UFL is.