diff options
author | Lionel Elie Mamane <lionel@mamane.lu> | 2013-04-12 19:03:07 +0200 |
---|---|---|
committer | Lionel Elie Mamane <lionel@mamane.lu> | 2013-04-12 19:05:35 +0200 |
commit | b8537fba16417aa5a2e940191f094b8671256ee5 (patch) | |
tree | 51093ea794b6d911db1be092d7e5eb2ee7e127a4 /reportbuilder | |
parent | a1cd39a17216d78b4f335e6301786e205be14d0d (diff) |
fdo#36858
1) No valueType (Format/Number/General) is like float valueType (Format/Number/any other)
2) We use 1/1/1900 as startdate for number-from-date, stick to it more consistently
Change-Id: Ib1008d1c30be602d8173457738c915087ed17391
Diffstat (limited to 'reportbuilder')
-rw-r--r-- | reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java index f5f65db53d52..4c1b8ddcd160 100644 --- a/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java +++ b/reportbuilder/java/org/libreoffice/report/pentaho/layoutprocessor/FormatValueUtility.java @@ -126,9 +126,10 @@ public class FormatValueUtility } else if (value instanceof java.sql.Date) { - if ("float".equals(valueType))//@see http://qa.openoffice.org/issues/show_bug.cgi?id=108954 + if ("float".equals(valueType) || valueType == null) { - variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE, HSSFDateUtil.getExcelDate((Date) value, false, 2).toString()); + // This is to work around fdo#63478 + variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE, HSSFDateUtil.getExcelDate((Date) value, false, 0).toString()); } else { @@ -137,8 +138,12 @@ public class FormatValueUtility } else if (value instanceof Date) { + // This is what we *should* do, but see fdo#63478 + // variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE_TYPE, "date"); + // variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, "date-value", formatDate((Date) value)); + // so we do that instead to work around: variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE_TYPE, "float"); - variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE, HSSFDateUtil.getExcelDate((Date) value, false, 2).toString()); + variableSection.setAttribute(OfficeNamespaces.OFFICE_NS, VALUE, HSSFDateUtil.getExcelDate((Date) value, false, 0).toString()); } else if (value instanceof BigDecimal) { |