invc.remove("month");
invc.remove("invoice_date");
}
if (getDueDay()>0 && getDueMonth()>0 && getDueYear()>0)
invc.setDueDate(new Date(getDueYear()-1900, getDueMonth()-1, getDueDay()));
invc.save(getSession(), getSessionAttribute("user_uuid"), getProcessed(), getApproved(), getMistakes());
BigDecimal total = invc.computeTotal();
if (getTotalAmount().subtract(total).abs().floatValue()>0.04f) {
Log.out.warn("Invoice "+invc.id()+" mismatch between supplied ("+getTotalAmount().toString()+") and computed ("+total.toString()+") total amounts");
DAO.log(getSession(), invc.getDocument(), Invoice.class, "AMOUNT MISMATCH", Level.WARNING, "mismatch between supplied ("+getTotalAmount().toString()+") and computed ("+total.toString()+") total amounts");
}