[Libreoffice-commits] .: wizards/com
Lionel Elie Mamane
lmamane at kemper.freedesktop.org
Mon Jun 18 07:47:24 PDT 2012
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 b86f2147e496e3b7ca5a085b302f6144f338aa82
Author: Lionel Elie Mamane <lionel at 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)
{
More information about the Libreoffice-commits
mailing list