Microsoft Dynamics 365 Blog

When you are designing new Microsoft SQL Server Reporting Services Reports with the Microsoft Dynamics AX 2009 Reporting Extension in Microsoft Visual Studio 2008, you sometimes face the following situation.

The new report is based on a Microsoft Dynamics AX 2009 Query that is having a field of the datatype Int64 specified as “Range” that is automatically added as report parameter with the type “System.Int64”.

When you now execute the report and enter a value for the report parameter that is larger than 214743647 the report does not display, but instead the following error message appears:

“The value provided for the report parameter ‘<parameter name>’ is not valid for its type. (rsReportParameterTypeMismatch)”

This is caused by the fact, that in the combination Microsoft Dynamics AX 2009 with Microsoft SQL Server Reporting Services the maximum value an integer type parameter can take is 214743647. Besides the parameter type Int64 also the parameter types UInt32 and UInt64 are affected by this limitation.

A report parameter is automatically added when a Query with a Range field is added to the report. This mandatory parameter cannot be deleted, it can however be modified. It is possible to change the parameter type from “System.Int64” to “System.Decimal”.

You can solve this by changing the report parameter type from System.Int64 to System.Decimal, larger values for the parameters are accepted, after rebuilding and redeploying the Reporting Solution.

We're always looking for feedback and would like to hear from you. Please head to the Dynamics 365 Community to start a discussion, ask questions, and tell us what you think!