FIX Error management

This commit is contained in:
Laurent Destailleur 2022-05-09 16:45:57 +02:00
parent 370f090403
commit b3bfe22f58

View File

@ -1852,13 +1852,15 @@ class BookKeeping extends CommonObject
$error++; $error++;
} }
// Delete if there is an empty line if (!$error) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity)." AND numero_compte IS NULL AND debit = 0 AND credit = 0"; // Delete if there is an empty line
$resql = $this->db->query($sql); $sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity)." AND numero_compte IS NULL AND debit = 0 AND credit = 0";
if (!$resql) { $resql = $this->db->query($sql);
$error++; if (!$resql) {
$this->errors[] = 'Error '.$this->db->lasterror(); $error++;
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR); $this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
} }
if (!$error) { if (!$error) {
@ -1889,34 +1891,42 @@ class BookKeeping extends CommonObject
} }
} }
} elseif ($direction == 1) { } elseif ($direction == 1) {
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity); if (!$error) {
$resql = $this->db->query($sql); $sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
if (!$resql) { $resql = $this->db->query($sql);
$error++; if (!$resql) {
$this->errors[] = 'Error '.$this->db->lasterror(); $error++;
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR); $this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
} }
$sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.'_tmp (doc_date, doc_type,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,'; if (!$error) {
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,'; $sql = 'INSERT INTO '.MAIN_DB_PREFIX.$this->table_element.'_tmp (doc_date, doc_type,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num)'; $sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' SELECT doc_date, doc_type,'; $sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,'; $sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num)';
$sql .= ' numero_compte, label_compte, label_operation, debit, credit,'; $sql .= ' SELECT doc_date, doc_type,';
$sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num'; $sql .= ' doc_ref, fk_doc, fk_docdet, thirdparty_code, subledger_account, subledger_label,';
$sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity); $sql .= ' numero_compte, label_compte, label_operation, debit, credit,';
$resql = $this->db->query($sql); $sql .= ' montant, sens, fk_user_author, import_key, code_journal, journal_label, piece_num';
if (!$resql) { $sql .= ' FROM '.MAIN_DB_PREFIX.$this->table_element.' WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$error++; $resql = $this->db->query($sql);
$this->errors[] = 'Error '.$this->db->lasterror(); if (!$resql) {
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR); $error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
} }
$sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$resql = $this->db->query($sql); if (!$error) {
if (!$resql) { $sql = 'DELETE FROM '.MAIN_DB_PREFIX.$this->table_element.'_tmp WHERE piece_num = '.((int) $piece_num).' AND entity = ' .((int) $conf->entity);
$error++; $resql = $this->db->query($sql);
$this->errors[] = 'Error '.$this->db->lasterror(); if (!$resql) {
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR); $error++;
$this->errors[] = 'Error '.$this->db->lasterror();
dol_syslog(__METHOD__.' '.join(',', $this->errors), LOG_ERR);
}
} }
} }
if (!$error) { if (!$error) {