def METHOD_NAME(self, value, skel, name, origData):
    try:
        rawValue = str(value).replace(",", ".", 1)
    except:
        return self.getEmptyValue(), [ReadFromClientError(ReadFromClientErrorSeverity.Invalid, "Invalid Value")]
    else:
        if self.precision and (str(rawValue).replace(".", "", 1).replace("-", "", 1).isdigit()) and float(
            rawValue) >= self.min and float(rawValue) <= self.max:
            value = round(float(rawValue), self.precision)
        elif not self.precision and (str(rawValue).replace("-", "", 1).isdigit()) and int(
            rawValue) >= self.min and int(rawValue) <= self.max:
            value = int(rawValue)
        else:
            return self.getEmptyValue(), [ReadFromClientError(ReadFromClientErrorSeverity.Invalid, "Invalid Value")]
    err = self.isInvalid(value)
    if err:
        return self.getEmptyValue(), [ReadFromClientError(ReadFromClientErrorSeverity.Invalid, err)]
    return value, None