details:   https://code.openbravo.com/erp/devel/pi/rev/b08f17d2334f
changeset: 16567:b08f17d2334f
user:      Martin Taal <martin.taal <at> openbravo.com>
date:      Thu May 17 14:57:33 2012 +0200
summary:   Fixes issue 20532: OB.Datasource.get() still uses dot (.) as field 
separator
Replace field separator dot with constant in several places.

diffstat:

 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DefaultDataSourceService.java
  |   3 +-
 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/templates/datasource.ftl
       |   2 +-
 
modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/SelectorComponent.java
 |  24 +++++-----
 3 files changed, 15 insertions(+), 14 deletions(-)

diffs (75 lines):

diff -r a821c504f959 -r b08f17d2334f 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DefaultDataSourceService.java
--- 
a/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DefaultDataSourceService.java
       Thu May 17 11:56:12 2012 +0200
+++ 
b/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/DefaultDataSourceService.java
       Thu May 17 14:57:33 2012 +0200
@@ -300,7 +300,8 @@
           if (additionalProperties.length() > 0) {
             additionalProperties.append(",");
           }
-          additionalProperties.append(dsProp.getName() + "." + addProp);
+          additionalProperties.append(dsProp.getName() + DalUtil.FIELDSEPARATOR
+              + addProp.replace(DalUtil.DOT, DalUtil.FIELDSEPARATOR));
         }
       }
     }
diff -r a821c504f959 -r b08f17d2334f 
modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/templates/datasource.ftl
--- 
a/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/templates/datasource.ftl
    Thu May 17 11:56:12 2012 +0200
+++ 
b/modules/org.openbravo.service.datasource/src/org/openbravo/service/datasource/templates/datasource.ftl
    Thu May 17 14:57:33 2012 +0200
@@ -99,7 +99,7 @@
 </#macro>
 
 <#macro generateReferenceField property subPropName>
-    {name: '${property.name?js_string}.${subPropName}'
+    {name: '${property.name?js_string}$${subPropName}'
     <#--
     , type: 'text', hidden: true
     <#if property.mandatory>
diff -r a821c504f959 -r b08f17d2334f 
modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/SelectorComponent.java
--- 
a/modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/SelectorComponent.java
      Thu May 17 11:56:12 2012 +0200
+++ 
b/modules/org.openbravo.userinterface.selector/src/org/openbravo/userinterface/selector/SelectorComponent.java
      Thu May 17 14:57:33 2012 +0200
@@ -135,17 +135,18 @@
   }
 
   private static String getPropertyOrDataSourceField(SelectorField 
selectorField) {
+    final String result;
     if (selectorField.getProperty() != null) {
-      return selectorField.getProperty();
+      result = selectorField.getProperty();
+    } else if (selectorField.getDisplayColumnAlias() != null) {
+      result = selectorField.getDisplayColumnAlias();
+    } else if (selectorField.getObserdsDatasourceField() != null) {
+      result = selectorField.getObserdsDatasourceField().getName();
+    } else {
+      throw new IllegalStateException("Selectorfield " + selectorField
+          + " has a null datasource and a null property");
     }
-    if (selectorField.getDisplayColumnAlias() != null) {
-      return selectorField.getDisplayColumnAlias();
-    }
-    if (selectorField.getObserdsDatasourceField() != null) {
-      return selectorField.getObserdsDatasourceField().getName();
-    }
-    throw new IllegalStateException("Selectorfield " + selectorField
-        + " has a null datasource and a null property");
+    return result.replace(DalUtil.DOT, DalUtil.FIELDSEPARATOR);
   }
 
   public static String getAdditionalProperties(Selector selector, boolean 
onlyDisplayField) {
@@ -284,8 +285,7 @@
 
   public String getValueField() {
     if (getSelector().getValuefield() != null) {
-      String valueField = 
getPropertyOrDataSourceField(getSelector().getValuefield());
-      valueField = valueField.replace(DalUtil.DOT, DalUtil.FIELDSEPARATOR);
+      final String valueField = 
getPropertyOrDataSourceField(getSelector().getValuefield());
       if (!getSelector().isCustomQuery()) {
         final DomainType domainType = 
getDomainType(getSelector().getValuefield());
         if (domainType instanceof ForeignKeyDomainType) {
@@ -320,7 +320,7 @@
       // and which has a field defined
       if (dataSource.getTable() == null && 
!dataSource.getOBSERDSDatasourceFieldList().isEmpty()) {
         final DatasourceField dsField = 
dataSource.getOBSERDSDatasourceFieldList().get(0);
-        return dsField.getName();
+        return dsField.getName().replace(DalUtil.DOT, DalUtil.FIELDSEPARATOR);
       }
     }
 

------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to