private void appendFunctionSql(StringBuilder sb) { if (_function == null) { return; } final StringBuilder functionBeginning = new StringBuilder(); if (_functionApproximationAllowed) { functionBeginning.append(FUNCTION_APPROXIMATION_PREFIX); } functionBeginning.append(_function.getFunctionName()); functionBeginning.append('('); sb.insert(0, functionBeginning.toString()); final Object[] functionParameters = getFunctionParameters(); if (functionParameters != null && functionParameters.length != 0) { for (int i = 0; i < functionParameters.length; i++) { sb.append(','); sb.append('\''); sb.append(functionParameters[i]); sb.append('\''); } } sb.append(")"); }
private void appendFunctionSql(StringBuilder sb) { if (_function == null) { return; } final StringBuilder functionBeginning = new StringBuilder(); if (_functionApproximationAllowed) { functionBeginning.append(FUNCTION_APPROXIMATION_PREFIX); } functionBeginning.append(_function.getFunctionName()); functionBeginning.append('('); sb.insert(0, functionBeginning.toString()); final Object[] functionParameters = getFunctionParameters(); if (functionParameters != null && functionParameters.length != 0) { for (int i = 0; i < functionParameters.length; i++) { sb.append(','); sb.append('\''); sb.append(functionParameters[i]); sb.append('\''); } } sb.append(")"); }
@Override public Object getValue(int index) throws IndexOutOfBoundsException { final List<SelectItem> scalarFunctionSelectItems = _scalarFunctionDataSet .getScalarFunctionSelectItemsToEvaluate(); final int scalarFunctionCount = scalarFunctionSelectItems.size(); if (index >= scalarFunctionCount) { return _row.getValue(index - scalarFunctionCount); } final SelectItem selectItem = scalarFunctionSelectItems.get(index); final SelectItem selectItemWithoutFunction = selectItem.replaceFunction(null); return selectItem.getScalarFunction().evaluate(_row, selectItem.getFunctionParameters(), selectItemWithoutFunction); }
@Override public Object getValue(int index) throws IndexOutOfBoundsException { final List<SelectItem> scalarFunctionSelectItems = _scalarFunctionDataSet .getScalarFunctionSelectItemsToEvaluate(); final int scalarFunctionCount = scalarFunctionSelectItems.size(); if (index >= scalarFunctionCount) { return _row.getValue(index - scalarFunctionCount); } final SelectItem selectItem = scalarFunctionSelectItems.get(index); final SelectItem selectItemWithoutFunction = selectItem.replaceFunction(null); return selectItem.getScalarFunction().evaluate(_row, selectItem.getFunctionParameters(), selectItemWithoutFunction); }