Better error management

This commit is contained in:
Laurent Destailleur 2020-10-22 18:39:45 +02:00 committed by GitHub
parent 594d9e321e
commit b4581b6af8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -356,28 +356,36 @@ if (empty($reshook))
$object->cond_reglement_code = 0; // To clean property $object->cond_reglement_code = 0; // To clean property
$object->cond_reglement_id = 0; // To clean property $object->cond_reglement_id = 0; // To clean property
$error = 0;
$db->begin(); $db->begin();
if (! $error) {
$result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int')); $result = $object->setPaymentTerms(GETPOST('cond_reglement_id', 'int'));
if ($result < 0) { if ($result < 0) {
$db->rollback(); $error++;
dol_print_error($db, $object->error); setEventMessages($object->error, $object->errors, 'errors');
exit; }
} }
if (! $error) {
$old_date_lim_reglement = $object->date_lim_reglement; $old_date_lim_reglement = $object->date_lim_reglement;
$new_date_lim_reglement = $object->calculate_date_lim_reglement(); $new_date_lim_reglement = $object->calculate_date_lim_reglement();
if ($new_date_lim_reglement > $old_date_lim_reglement) $object->date_lim_reglement = $new_date_lim_reglement; if ($new_date_lim_reglement > $old_date_lim_reglement) $object->date_lim_reglement = $new_date_lim_reglement;
if ($object->date_lim_reglement < $object->date) $object->date_lim_reglement = $object->date; if ($object->date_lim_reglement < $object->date) $object->date_lim_reglement = $object->date;
$result = $object->update($user); $result = $object->update($user);
if ($result < 0) { if ($result < 0) {
$db->rollback(); $error++;
dol_print_error($db, $object->error); setEventMessages($object->error, $object->errors, 'errors');
exit; }
} }
if ($error) {
$db->rollback();
} else {
$db->commit(); $db->commit();
} }
}
elseif ($action == 'setpaymentterm' && $usercancreate) elseif ($action == 'setpaymentterm' && $usercancreate)
{ {