expression.patch
src/main/java/org/gvsig/expressionfield/project/documents/table/gui/EvalExpressionDialog.java (copia locale) | ||
---|---|---|
312 | 312 |
return this.acceptCancel; |
313 | 313 |
} |
314 | 314 |
|
315 |
private String replaceFields(String expression) { |
|
316 |
// String s = expression.replaceAll("\\[","field(\"").replaceAll("\\]","\")"); |
|
317 |
String s = expression; |
|
318 |
|
|
319 |
JList list = getListFields(); |
|
320 |
ListOperatorsModel model = (ListOperatorsModel) list.getModel(); |
|
321 |
for ( int i = 0; i < model.getSize(); i++ ) { |
|
322 |
Field f = (Field) model.getElementAt(i); |
|
323 |
s = s.replaceAll(f.toString(), "field(\"" + f.getName() + "\")"); |
|
324 |
} |
|
325 |
return s; |
|
326 |
} |
|
327 |
|
|
328 | 315 |
/** |
329 | 316 |
* Evaluate the expression. |
330 | 317 |
* |
... | ... | |
342 | 329 |
logger.warn("Can't apply enconding ("+encoding+").",e); |
343 | 330 |
} |
344 | 331 |
|
345 |
// expression = expression.replaceAll("\\[", "field(\"").replaceAll("\\]", "\")"); |
|
346 |
expression = replaceFields(expression); |
|
332 |
expression = expression.replaceAll("\\[", "field(\"").replaceAll("\\]", "\")"); |
|
347 | 333 |
|
348 | 334 |
interpreter.declareBean("evalExpression", evalExpression, EvalExpression.class); |
349 | 335 |
interpreter.exec(ExpressionFieldExtension.JYTHON, null, -1, -1, "def expression():\n" |