diff --git a/core/class/declarationtva.class.php b/core/class/declarationtva.class.php index 7150bc1..5523305 100644 --- a/core/class/declarationtva.class.php +++ b/core/class/declarationtva.class.php @@ -1215,26 +1215,18 @@ class DeclarationTVA return true; // No entries to save } - // Use Dolibarr's accounting integration - require_once DOL_DOCUMENT_ROOT . '/compta/accounting/class/accountingbookkeeping.class.php'; - - $bookkeeping = new AccountingBookkeeping($this->db); - + // Insert accounting entries directly into the accounting table foreach ($entries as $entry) { - // Create accounting entry - $bookkeeping->doc_type = 'declarationtva'; - $bookkeeping->doc_ref = $declaration->declaration_number; - $bookkeeping->doc_date = $declaration->end_date; // Use declaration end date for OD entries - $bookkeeping->account_number = $entry['account_code']; - $bookkeeping->account_label = $entry['account_label']; - $bookkeeping->debit = $entry['debit']; - $bookkeeping->credit = $entry['credit']; - $bookkeeping->label = $entry['entry_label']; - $bookkeeping->entity = $this->entity; + $sql = "INSERT INTO " . MAIN_DB_PREFIX . "accounting_bookkeeping + (doc_type, doc_ref, doc_date, account_number, account_label, debit, credit, label, entity, date_creation, tms) + VALUES ('declarationtva', '" . $this->db->escape($declaration->declaration_name) . "', '" . $declaration->end_date . "', + '" . $this->db->escape($entry['account_code']) . "', '" . $this->db->escape($entry['account_label']) . "', + " . (float)$entry['debit'] . ", " . (float)$entry['credit'] . ", + '" . $this->db->escape($entry['entry_label']) . "', " . $this->entity . ", NOW(), NOW())"; - $result = $bookkeeping->create($user); + $result = $this->db->query($sql); if (!$result) { - $this->error = 'Failed to create accounting entry: ' . $bookkeeping->error; + $this->error = 'Failed to create accounting entry: ' . $this->db->lasterror(); return false; } }