public BigDecimal getBigDecimal(BigDecimal defaultValue) {
		try {
			if (isNull()) {
				return defaultValue;
			}
			if (data instanceof Double) {
				return BigDecimal.valueOf((Double) data);
			}
			if (data instanceof Long) {
				return BigDecimal.valueOf((Long) data);
			}
			if (data instanceof Integer) {
				return BigDecimal.valueOf((Integer) data);
			}
			if (data instanceof Long) {
				return BigDecimal.valueOf((Long) data);
			}
			return new BigDecimal(asString("").replace(",", "."),
					MathContext.UNLIMITED);
		} catch (NumberFormatException e) {
			return defaultValue;
		}
	}