details:   https://code.openbravo.com/erp/devel/pi/rev/ac37116c4cc2
changeset: 13764:ac37116c4cc2
user:      Martin Taal <martin.taal <at> openbravo.com>
date:      Tue Sep 13 11:36:48 2011 +0200
summary:   Fixes issue 18517: CLOB fields fails on oracle in the grid
Prevent filtering and sorting on clob fields, to prevent errors in oracle

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/OBViewGridComponent.java
 |  3 ++-
 
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/TextUIDefinition.java
           |  8 +++++++-
 2 files changed, 9 insertions(+), 2 deletions(-)

diffs (38 lines):

diff -r 45f5ddc6e578 -r ac37116c4cc2 
modules/org.openbravo.client.application/src/org/openbravo/client/application/window/OBViewGridComponent.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/OBViewGridComponent.java
     Tue Sep 13 10:46:40 2011 +0200
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/window/OBViewGridComponent.java
     Tue Sep 13 11:36:48 2011 +0200
@@ -91,7 +91,8 @@
       }
       final OBViewField viewField = (OBViewField) localField;
       final Long recordSortno = viewField.getField().getRecordSortNo();
-      if (viewField.isShowInitiallyInGrid() && recordSortno != null && 
recordSortno < lowestSortno) {
+      if (viewField.getLength() < 2000 && viewField.isShowInitiallyInGrid() && 
recordSortno != null
+          && recordSortno < lowestSortno) {
         sortByField = viewField;
       }
     }
diff -r 45f5ddc6e578 -r ac37116c4cc2 
modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/TextUIDefinition.java
--- 
a/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/TextUIDefinition.java
       Tue Sep 13 10:46:40 2011 +0200
+++ 
b/modules/org.openbravo.client.kernel/src/org/openbravo/client/kernel/reference/TextUIDefinition.java
       Tue Sep 13 11:36:48 2011 +0200
@@ -19,6 +19,8 @@
 
 package org.openbravo.client.kernel.reference;
 
+import org.openbravo.base.model.Property;
+import org.openbravo.client.kernel.KernelUtils;
 import org.openbravo.model.ad.ui.Field;
 
 /**
@@ -32,7 +34,11 @@
   // don't support sorting on large text fields
   @Override
   public String getGridFieldProperties(Field field) {
-    return super.getGridFieldProperties(field) + ", canSort: false";
+    final Property property = 
KernelUtils.getInstance().getPropertyFromColumn(field.getColumn());
+
+    // anything above 2000 is probably a clob
+    return super.getGridFieldProperties(field) + ", canSort: false"
+        + (property.getFieldLength() >= 2000 ? ", canFilter: false" : "");
   }
 
   @Override

------------------------------------------------------------------------------
BlackBerry&reg; DevCon Americas, Oct. 18-20, San Francisco, CA
Learn about the latest advances in developing for the 
BlackBerry&reg; mobile platform with sessions, labs & more.
See new tools and technologies. Register for BlackBerry&reg; DevCon today!
http://p.sf.net/sfu/rim-devcon-copy1 
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to