private PhenoData setValue( CustomField customField, CustomFieldDisplay customFieldDisplay, PhenoData data, String theDataAsString) { // log.warn("cf=" + customField + "\ndata=" + data+ "dataAsString=" + theDataAsString); if (customField.getFieldType().getName().equalsIgnoreCase(Constants.FIELD_TYPE_NUMBER)) { data.setNumberDataValue(new Double(theDataAsString)); } else if (customField.getFieldType().getName().equalsIgnoreCase(Constants.FIELD_TYPE_DATE)) { DateFormat dateFormat = new SimpleDateFormat(au.org.theark.core.Constants.DD_MM_YYYY); Date dateFieldValue; try { dateFieldValue = dateFormat.parse(theDataAsString); data.setDateDataValue(dateFieldValue); } catch (ParseException e) { data.setErrorDataValue(theDataAsString); } } else if (customField .getFieldType() .getName() .equalsIgnoreCase(Constants.FIELD_TYPE_CHARACTER)) { if (customField.getEncodedValues() != null && !customField.getEncodedValues().isEmpty() && customFieldDisplay.getAllowMultiselect()) { if (theDataAsString != null) { theDataAsString = theDataAsString.replaceAll(" ", ";"); } } data.setTextDataValue(theDataAsString); } return data; }