From ae7768dd7b77febe32a7d02a3e62c6c0a48a3bc2 Mon Sep 17 00:00:00 2001 From: Frank Cools Date: Thu, 2 Oct 2025 21:48:44 +0200 Subject: [PATCH] Revert to 3-column layout with special base+VAT columns for 08, 09, 9B Reverted: - Main table back to 3 columns (Line, Description, Amount) - Sections A, C, D use normal 3-column layout - Only lines 08, 09, 9B have special 4-column layout (Line, Description, Base HT, VAT) - Added special header 'Base HT et TVA par taux' for these lines - Line 17 uses normal 3-column layout - Added language translations for new header --- declarationtva_view.php | 58 +++++++++++++++++++++------------ langs/en_US/declarationtva.lang | 1 + langs/fr_FR/declarationtva.lang | 1 + 3 files changed, 40 insertions(+), 20 deletions(-) diff --git a/declarationtva_view.php b/declarationtva_view.php index 93766a6..ba6781d 100644 --- a/declarationtva_view.php +++ b/declarationtva_view.php @@ -138,9 +138,7 @@ print ''; print ''; print ''; print ''; -print ''; -print ''; -print ''; +print ''; print ''; // Get actual CA-3 lines from database @@ -157,73 +155,93 @@ foreach ($ca3_lines as $line) { // Section A: Opérations imposables print ''; -print ''; +print ''; print ''; $section_a_lines = array('A1', 'A2', 'A3', 'A4', 'A5'); foreach ($section_a_lines as $line) { - $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'base_amount' => 0, 'vat_amount' => 0, 'total_amount' => 0); + $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'vat_amount' => 0); $description = isset($ca3_definitions[$line]) ? $ca3_definitions[$line]['label'] : $data['line_label']; print ''; print ''; print ''; - print ''; print ''; - print ''; print ''; } // Section B: TVA due print ''; -print ''; +print ''; print ''; -$section_b_lines = array('08', '09', '9B', '17'); -foreach ($section_b_lines as $line) { - $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'base_amount' => 0, 'vat_amount' => 0, 'total_amount' => 0); +// Special header for lines 08, 09, 9B with base and VAT columns +print ''; +print ''; +print ''; + +print ''; +print ''; +print ''; +print ''; +print ''; +print ''; + +$base_vat_lines = array('08', '09', '9B'); +foreach ($base_vat_lines as $line) { + $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'base_amount' => 0, 'vat_amount' => 0); $description = isset($ca3_definitions[$line]) ? $ca3_definitions[$line]['label'] : $data['line_label']; print ''; print ''; print ''; print ''; print ''; - print ''; print ''; } +// Reset to normal layout for line 17 +print ''; +print ''; +print ''; +print ''; +print ''; + +$data = isset($ca3_data['17']) ? $ca3_data['17'] : array('line_label' => '', 'vat_amount' => 0); +$description = isset($ca3_definitions['17']) ? $ca3_definitions['17']['label'] : $data['line_label']; +print ''; +print ''; +print ''; +print ''; +print ''; + // Section C: TVA déductible print ''; -print ''; +print ''; print ''; $section_c_lines = array('20', '21', '22'); foreach ($section_c_lines as $line) { - $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'base_amount' => 0, 'vat_amount' => 0, 'total_amount' => 0); + $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'vat_amount' => 0); $description = isset($ca3_definitions[$line]) ? $ca3_definitions[$line]['label'] : $data['line_label']; print ''; print ''; print ''; - print ''; print ''; - print ''; print ''; } // Section D: Résultat print ''; -print ''; +print ''; print ''; $section_d_lines = array('25', '26', '28', '29'); foreach ($section_d_lines as $line) { - $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'base_amount' => 0, 'vat_amount' => 0, 'total_amount' => 0); + $data = isset($ca3_data[$line]) ? $ca3_data[$line] : array('line_label' => '', 'vat_amount' => 0); $description = isset($ca3_definitions[$line]) ? $ca3_definitions[$line]['label'] : $data['line_label']; print ''; print ''; print ''; - print ''; print ''; - print ''; print ''; } diff --git a/langs/en_US/declarationtva.lang b/langs/en_US/declarationtva.lang index 75c655a..ef7beda 100644 --- a/langs/en_US/declarationtva.lang +++ b/langs/en_US/declarationtva.lang @@ -440,3 +440,4 @@ CA3SectionD = Result BaseAmount = Base Amount VATAmount = VAT Amount TotalAmount = Total Amount +BaseHTAndVATByRate = Base HT and VAT by Rate diff --git a/langs/fr_FR/declarationtva.lang b/langs/fr_FR/declarationtva.lang index 72b9e38..e1224ff 100644 --- a/langs/fr_FR/declarationtva.lang +++ b/langs/fr_FR/declarationtva.lang @@ -429,3 +429,4 @@ CA3SectionD = Résultat BaseAmount = Montant HT VATAmount = Montant TVA TotalAmount = Montant Total +BaseHTAndVATByRate = Base HT et TVA par taux
' . $langs->trans("CA3Line") . '' . $langs->trans("Description") . '' . $langs->trans("BaseAmount") . '' . $langs->trans("VATAmount") . '' . $langs->trans("TotalAmount") . '' . $langs->trans("Amount") . '
A. ' . $langs->trans("CA3SectionA") . 'A. ' . $langs->trans("CA3SectionA") . '
' . $line . '' . $description . '' . price($data['base_amount']) . '' . price($data['vat_amount']) . '' . price($data['total_amount']) . '
B. ' . $langs->trans("CA3SectionB") . 'B. ' . $langs->trans("CA3SectionB") . '
' . $langs->trans("BaseHTAndVATByRate") . '
' . $langs->trans("CA3Line") . '' . $langs->trans("Description") . '' . $langs->trans("BaseAmount") . '' . $langs->trans("VATAmount") . '
' . $line . '' . $description . '' . price($data['base_amount']) . '' . price($data['vat_amount']) . '' . price($data['total_amount']) . '
' . $langs->trans("CA3Line") . '' . $langs->trans("Description") . '' . $langs->trans("Amount") . '
17' . $description . '' . price($data['vat_amount']) . '
C. ' . $langs->trans("CA3SectionC") . 'C. ' . $langs->trans("CA3SectionC") . '
' . $line . '' . $description . '' . price($data['base_amount']) . '' . price($data['vat_amount']) . '' . price($data['total_amount']) . '
D. ' . $langs->trans("CA3SectionD") . 'D. ' . $langs->trans("CA3SectionD") . '
' . $line . '' . $description . '' . price($data['base_amount']) . '' . price($data['vat_amount']) . '' . price($data['total_amount']) . '