cancel
Showing results for 
Search instead for 
Did you mean: 

Deploy an UFL

Former Member
0 Kudos

Hi!

I programmed an ufl using Visual Studio 2012 (VB). I use this ufl in a report for a website that was also programmed with Visual Studio 2012. I am able to run the website on my developpement PC without problem. But when I try deploy it on another computer, it does not work. Both computers run on Windows 7 64-bit. I don't know why but, after a whole day of trying to solve the problem, I have been able to make it work on a computer with Windows server 2008 R2 64 bit. But now I am trying on the Win7 64 bit computer without success.

I did the procedure shown on the link:

http://wiki.sdn.sap.com/wiki/display/BOBJ/How+to+deploy+a+UFL+created+in+Visual+Studio+.NET

I use IIS and my website is configured to use the framework 4.0. The source code is built on the framework 4.5.

I installed the redist for Cystal Reports : CRforVS_redist_install_64bit_13_0_5

When I try to show the report with the UFL, I get the error message :

    UFL u212com.dll that implements this function is missing [...]

The reports that are not using UFL are working.

I searched on google and tried everything I've found. I tried to register the ufl with gacutil, also with regasm. The ufl folder does show in the GAC : C:\Windows\Microsoft.NET\assembly\GAC_MSIL. I tried to build both projects (ufl and the website that use the ufl) in 32 bit, 64 bit or any cpu and registering the ufl so that it shows in the 32 bit and 64 bit folders of the GAC. Nothing works (but on the Windows server 2008 machine, it is built in any cpu). On the working machine (win 2008), I tried to delete by hand the ufl in the GAC, when I delete the one in GAC_MSIL, it stops working. But if I delete the ones in the 64 bit and 32 bit folder, it is still working. So my guess is that when I build using the any cpu option, it takes the ufl in the GAC_MSIL folder. I also rebooted my machine everytime I tried something new.

I also installed the 32 bit redist of Crystal Reports, nothing changes.

As for u212com.dll, it is in the Crystal Reports folder :

C:\Program Files (x86)\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Common\SAP BusinessObjects Enterprise XI 4.0\win64_x64

I tried so many things that I lost track of what I did, so maybe I forgot some details.

Does someone have an idea of what would be the problem?

Thanks!

Accepted Solutions (1)

Accepted Solutions (1)

former_member183750
Active Contributor
0 Kudos

Hello Choz

I get a little lost in the 32 bit / 64 bit "Any CPU" sequence.

Few things to keep in mind:

32 bit UFL will work on 32 bit OS in an app compiled as 32 bit - obvious I know, more below

64 bit UFL will work on 64 bit OS in an app compiled as 64 bit - ditto to above

Complication comes in when the project is compiled as "Any CPU" and deployed to a 64 bit OS. By definition, 64 bit OS will want to use 64 bit runtime - including the UFL.( There are ways to enforce 32 bit run for these apps, but not sure what would be the point.)

If possible, I'd like to follow these testing steps:

1) Compile both the app and the UFL as 32 bit

2) Deploy the app, the 32 bit CR runtime and the UFL (following the steps in the wiki you linked to) on a 32 bit OS. Does this work?

3) Compile both the app and the UFL as 64 bit 

2) Deploy the app, the 64 bit CR runtime and the UFL (following the steps in the wiki you linked to) on a 64 bit OS. Does this work?

- Ludek

Senior Support Engineer AGS Primary Support, Global Support Center Canada

Follow us on Twitter

Got Enhancement ideas? Try the SAP Idea Place

Share Your Knowledge in SCN Topic Spaces

Former Member
0 Kudos

Hi!

Even though I already tried these, I tried them this morning too, it does the same u212com.dll error. Also, when I compile both applications in 32 bit and I use the 32-bit crystal reports redist, the website isn't lauching and I get an error of reference (can not find crystal reports dll). So, it seems that crystal reports can only work in 64-bit on a 64-bit computer.

Also, Regasm only accept ufl that are compiled with any cpu. 32 bit and 64 bit dll gets an error of "invalid .net assembly file".

former_member183750
Active Contributor
0 Kudos

Sorry, this does not make any sense to me...

I think it will really be a good idea to create a phone support case here:

http://store.businessobjects.com/store/bobjamer/en_US/pd/productID.98078100

- Ludek

Former Member
0 Kudos

Ok. I think that I found a workaround wihtout using an ufl.

I will create a phone support if I need to.

Thanks!

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Choz,

What happens when you recompile your UFL using .Net Framework 4.0 instead of 4.5?

Theo

Former Member
0 Kudos

Hi!

I tried this too, and nothing changes.