Vb.net – Crystal is not generating code for upgraded report with UFL Library for upgraded project from VS2008 to VS2012

crystal-reportsvb.netvisual studio 2012

i have a solution developed in VS 2008 and 3.5 in VB with almost 38 projects (class libraries) in it. This whole thing is big project with almost 140 reports (crystal reports) in it.

now i install Visual Studio 2012 Ultimate with Crystal Report (CRforVS_13_0_7)
and upgraded my solution to .net 4.5 everything works fine.

some of my reports uses a library written in VB.net CRUFL for InWord support in indian rupee format

now i am facing problem with upgrading reports to new crystal report format.
when i open any report file and verify and save it asks me to save in new crystal report format if i choose yes to upgrade i get error from crystal code generator

Custom tool error: "Code generator 'ReportCodeGenerator' failed.  Exception stack = CrystalDecisions.Shared.CrystalReportsException: Load report failed. ---> System.Runtime.InteropServices.COMException: UFL 'u212com.dll' that implements this function is missing.
Error in File repAbstract {B0F50159-6708-4E3E-A668-899D0616325C}.rpt:
Error in formula  drInWord: 
'UniSuiteReportingEXReportingEXToWords (ABS(Sum ({@drAmount})))'
UFL 'u212com.dll' that implements this function is missing.
   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 CrystalDecisions.VSDesigner.CodeGen.ReportClassWriter..ctor(String filePath)
   at CrystalDecisions.VSDesigner.CodeGen.ReportClassWriter..ctor(String filePath, String resourceNamespace)
   at CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator.GenerateCode(String inputFileName, String inputFileContent)"  Z:\World Of Programming\Product\VS .Net\Products\Uni Suite\Uni Suite 2.0\Uni_Suite.Reports\repAbstract.rpt  1   1   Uni_Suite.Reports
  • What I figured out that the problem is with CRUFL function,

  • If I comment function in formula and just return normal string in it
    and flow the process report upgrades and works fine.

  • If I add new report and use this function is formula that also works
    fine.

  • I created completely new library written in 4.5 for any upgrading
    wizard errors but the behavior is same.

This is clear I cannot create all these reports again in new version, count is huge and some of them are very complex.

Am I missing something of is there anything I have to study first before upgrading my project

Please suggest

one more thing OS is windows 8.1 Pro

Best Answer

Found a temporary solution for it. This seems to be a bug in crystal designer in visual studio on windows 8.1

Temporary solution is:

  • Right click on report file and select properties

  • Remove “CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator” from Custom Tool.

  • Now report designer will not raise any error for any changes or testing, do updates or changes and save report.

  • Close designer of report

  • Now open properties and past “CrystalDecisions.VSDesigner.CodeGen.ReportCodeGenerator” in custom tool and press enter. This will generate code for report without any error and report will also work fine

This will generate code for report without any error and report will also work fine This definitely a bug in crystal report for visual studio I don’t know how to submit this bug to SAP but I will search and submit this to crystal report to help them improve this. Meanwhile this is a solution worked for me.

you can find communication regarding this here http://scn.sap.com/thread/3452634

EDIT

but now new issue after using above method report is not accepting any select filter and showing all data from database with select statement.

working on it... any help please

EDIT

Found solution for this also amazing, this is happening only with reports with UFL in same viewer OK

found solution here http://scn.sap.com/message/8179989#8179989

what you have to do is to remove following two lines from from designer where your viewer control is.

crystalReportViewer.SelectionFormula = ""
crystalReportViewer.ViewTimeSelectionFormula = ""

EDIT

now i updated my crystal report to service pack 8 (v. 13.0.8.1216)

Link http://scn.sap.com/docs/DOC-7824

But no luck still using method mentioned above

EDIT

i updated to crystal report service pack 10 (v.13.0.10.1385) & VS 2013 (64Bit windows 8.1 update 1)

but still no luck, using above method

Related Topic