wizards/com/sun/star/wizards/common/NumberFormatter.java | 5 +++- wizards/com/sun/star/wizards/db/FieldColumn.java | 16 +++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-)
New commits: commit fec488b9dc3018d421747fb887edee93ad3ed98e Author: Lionel Elie Mamane <lio...@mamane.lu> Date: Mon Jun 18 16:28:14 2012 +0200 fdo#43967 legacy report designer wizard formats dates improperly 1) Set FormatsSupplier property only if underlying object has one. Else, exception is thrown and the format is not set 2) getTyperelatedFieldData uses the format keys, so initialize them before call, not after. Change-Id: I68c4c96a9da9a6afdc3ab8964e973588f53ee814 diff --git a/wizards/com/sun/star/wizards/common/NumberFormatter.java b/wizards/com/sun/star/wizards/common/NumberFormatter.java index 9c0feb5..bbf6385 100644 --- a/wizards/com/sun/star/wizards/common/NumberFormatter.java +++ b/wizards/com/sun/star/wizards/common/NumberFormatter.java @@ -201,7 +201,10 @@ public class NumberFormatter Locale oLocale = (Locale) Helper.getUnoPropertyValue(xNumberFormat, "Locale"); int NewFormatKey = defineNumberFormat(FormatString, oLocale); XPropertySet xPSet = UnoRuntime.queryInterface(XPropertySet.class, _xFormatObject); - xPSet.setPropertyValue("FormatsSupplier", _oNumberFormatter.xNumberFormatter.getNumberFormatsSupplier()); + if (xPSet.getPropertySetInfo().hasPropertyByName("FormatsSupplier")) + { + xPSet.setPropertyValue("FormatsSupplier", _oNumberFormatter.xNumberFormatter.getNumberFormatsSupplier()); + } if (xPSet.getPropertySetInfo().hasPropertyByName("NumberFormat")) { xPSet.setPropertyValue("NumberFormat", new Integer(NewFormatKey)); diff --git a/wizards/com/sun/star/wizards/db/FieldColumn.java b/wizards/com/sun/star/wizards/db/FieldColumn.java index ebedd22..47b37df 100644 --- a/wizards/com/sun/star/wizards/db/FieldColumn.java +++ b/wizards/com/sun/star/wizards/db/FieldColumn.java @@ -154,13 +154,8 @@ public class FieldColumn { try { - m_xColPropertySet = UnoRuntime.queryInterface(XPropertySet.class, _xColumns.getByName(m_sFieldName)); - ColIndex = JavaTools.FieldInList(_xColumns.getElementNames(), m_sFieldName) + 1; - m_nFieldType = AnyConverter.toInt(m_xColPropertySet.getPropertyValue("Type")); - getTyperelatedFieldData(); - - if (!bFormatKeysInitialized) - { + if (!bFormatKeysInitialized) + { final NumberFormatter aNumberFormatter = oCommandMetaData.getNumberFormatter(); iDateFormatKey = aNumberFormatter.getDateFormatKey(); @@ -170,7 +165,12 @@ public class FieldColumn iTimeFormatKey = aNumberFormatter.getTimeFormatKey(); iLogicalFormatKey = aNumberFormatter.getLogicalFormatKey(); bFormatKeysInitialized = true; - } + } + + m_xColPropertySet = UnoRuntime.queryInterface(XPropertySet.class, _xColumns.getByName(m_sFieldName)); + ColIndex = JavaTools.FieldInList(_xColumns.getElementNames(), m_sFieldName) + 1; + m_nFieldType = AnyConverter.toInt(m_xColPropertySet.getPropertyValue("Type")); + getTyperelatedFieldData(); } catch (Exception e) { _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits