[Libreoffice-commits] .: Branch 'libreoffice-3-6' - wizards/com

Lionel Elie Mamane lmamane at kemper.freedesktop.org
Mon Jun 18 07:46:17 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 fec488b9dc3018d421747fb887edee93ad3ed98e
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