Skip to Content

Archived discussions are read-only. Learn more about SAP Q&A

Number database field treated as String in formula when using 64bit runtime

We are about to move our Windows Forms application from a Windows XP 32 bit to Windows 7 64 bit system.

We have a lot of reports created in Crystal Reports Developer 2008, retreiving data with stored procedures in SQL Server 2005 (OLEDB).

After upgrading to SAP Crystal Reports for Visual Studio 2010 and the runtime to Windows 7 64 bit,

2 of all the reports (about 100) have stopped to work. In formulas where a Number (decimal) field from the datasource is used, crystal treats it as a string. When comparing the value with a number we get an error saying

"A value of type string is required here" Details: errorKind.

In other reports with the same kind of formula, it works fine so it seems to be some issue within these 2 report files.

I have tried re-mapping of the datasource, converted the report to 2010 format but it didn't solve the problem.

If I surround the field with a ToNumber function in the forumla it works fine.

But why is Crystal treating the Number field as a string in this formula when executing on 64 bit runtime?

Did anyone have the same problem? Solution?


Section suppress formula:

This formula gives the error when executing on the 64 bit environment but works fine when previewing in the developer.

{spRptCollateral;1.GuaranteesFuture} = 0

This fixes the problem in the 64 bit environment:

ToNumber({spRptCollateral;1.GuaranteesFuture}) = 0

Development environment:

Windows XP 32 bit

Reports designed in Crystal Reports Developer 2008, Version

Visual Studio 2010 solution

SAP Crystal Reports for Visual Studio 2010, Version

Windows Forms Client, compiled for any CPU, .Net Framework 3.5, referencing Crystal dlls of version 13.0.2000 in the ...\win32_x86\dotnet folder

Runtime environment:

Windows 7 64 bit

SAP Crystal Reports Runtime 64 bit Version 13.0.1

Not what you were looking for? View more on this topic or Ask a question