DLL missing error while refreshing Crystal Report
Upgrade of Crystal Report:
Upgrade of crystal report can be done using Upgrade management tool available with the SAP Business Objects BI4. In this tool we have couple of options to upgrade the report, for instance LIVE to LIVE, or BIAR to LIVE. Depending on the requirement we can chose one of the option to upgrade the report using the tool.
In this blog, we are going to discuss one of the errors we faced after the reports were upgraded to SAP Business Objects BI4 from the older version R2 and R3. The error message is prompted once we click on Refresh button either in the Crystal Report 2011 tool or in the browser.
Error in File ~tmp1b40808999c4640.rpt: Error in formula BusinessHours: ‘// Business hours excluding holidays ‘ The Visual Basic UFL that implements this function is missing (or U2lcom.dll is missing).
~tmp1b40808999c4640.rpt is the report ID generated automatically in the error message.
BusinessHours and Business hours excluding are the Formula used in the report.
U2lcom.dll is the DLL file which is missing
Cause of the Error:
When the reports were developed in the older version on SAP Business objects XI 2 and R3, there were lot of UFL’s available from download pages that anyone could download and add to their reports.
Developers made use of these UFL’s to make the formula work in their report. In our error message example we see that the Visual Basic UFL file that implements the function is missing. Clearly the file needed to execute the formula is not present, which is the cause of the error message:
Here, DLL stands for Dynamic-link library, and UFL stands for User Function Library.
To resolve the error message, we need to register the missing DLL file mentioned in the error message on the servers where SAP Business Objects BI4 is installed. We need to register the DLL files on all the servers if it is a clustered environment. The DLL file can be kept at the location where all the DLL files used by SAP Business Objects reside
E:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\
The DLL can be then registered using the standard register command using the command prompt. Suppose we need to register the file u2lcom.dll, we can use the below command:
regsvr32 “E:\Program Files\SAP BusinessObjects\SAP BusinessObjects Enterprise XI 4.0\win32_x86\u2lcom.dll”
This command registers the DLL in the Windows registry. The command is a command-line utility in Microsoft Windows operating systems for registering and unregistering DLLs and ActiveX controls in the Windows Registry.
So once the DLL file is registered the formula used in the crystal report is able to execute using the DLL file and we do not receive the error message.