cancel
Showing results for 
Search instead for 
Did you mean: 

Maximum double value in report appears to be 1.7E306 instead of the expected 1.7E308. Why is that?

NLD
Explorer
0 Kudos
69

Crystal reports for visual studio, service pack 37

My report accesses a database with a column whose type is double.

The maximum double value according to IEEE format is 1.79769313486231E+308

However, the maximum value is can display in my report is 1.79769313486231E+306

Note I'm displaying it in default format: 1.80e+306

If the value is any larger, my display is 1.#Je+000

If I attempt to pass the larger value to UFL function whose input param is double, the value passed is infinity.

As a test and to eliminate my database and UFL from the suspect list, I created a formula that simply returns a number.  Since I could not figure out how to specify a value using exponential notation in the formula I used the exp function which looks like:

numbervar num;

num := Exp(705.1775427);

That value is approximately 1.79769313486231E+306.  If I try to increase the 705.1775427 param any higher, crystal gives me a 'numeric overflow' when saving the formula.

It appears that Crystal is artificially limiting my maximum value.  Is that true and why?

 

View Entire Topic
DonWilliams
Active Contributor
0 Kudos

Hello,

I can confirm this is not working as expected.

I hit the F1 key (CR Help) and searched on the EXP function and found this noted limitation:

Comments

  • This function is designed to work like the Visual Basic function of the same name.

  • Numeric overflow occurs if the given number argument is larger than approximately 705.

It appears to be a known limitation, likely due to the legacy C++ limitation.

Don