thibaultleouay/native-excel-emitter-birt-plugin

Date value displayed incorrectly in excel output

Opened this issue · 2 comments

What steps will reproduce the problem?
This issue occurs intermittently.

What is the expected output? What do you see instead?
Date in excel output is displayed as '1/1/4713' and '1/0/0000' instead of
'2/14/2014' and '2/11/2014'

What version of the product are you using? On what operating system?
Environmental Details:

App server : Weblogic 11
BIRT - 3.7.0
Java - 1.6
OS - unix
Database - Oracle11g

Please provide any additional information below.
In on render property of date column we are using following script:

this.setDisplayValue(Formatter.format(this.getValue(),"M/d/yyyy"));

We are using native excel emitter :

org.eclipse.birt.report.engine.emitter.nativexls


Original issue reported on code.google.com by narsimha.it@gmail.com on 18 Jun 2014 at 4:27

we are not getting this issue every time.
In PDF and HTML, displays correctly.
in excel we are facing this issue not always.

Any info regrding this would be of great help. 

Original comment by narsimha.it@gmail.com on 18 Jun 2014 at 4:56

This is not issue with Excel emitter , it is issue with Formatter class used in 
org.eclipse.birt.runtime_3.7.0.v20110615-1818.jar

The DateFormat class used in DateFormatter is not Threadsafe , please find 
below url for reference -
http://docs.oracle.com/javase/7/docs/api/java/text/DateFormat.html 

Adding ThreadLocal to class variables - stringFormatters, numberFormatters and 
dateFormatters will solve this issue

Original comment by dhulipud...@googlemail.com on 5 Aug 2014 at 5:25