Initial commit: Odoo 18.0-20251222 extra-addons
Some checks failed
pre-commit / pre-commit (push) Has been cancelled
tests / Detect unreleased dependencies (push) Has been cancelled
tests / test with OCB (push) Has been cancelled
tests / test with Odoo (push) Has been cancelled

This commit is contained in:
tocmo0nlord
2026-03-13 20:43:25 +00:00
parent 36e847a7df
commit adbe430761
9472 changed files with 1265727 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
When this module is checking if the model has to display the name in the footer
is done at the level of the initial model of the report you are printing.
Examples of strange cases/uses:
*stock_picking_batch_print_pickings* and *stock_picking_batch_print_invoices* modules
print the delivery notes or invoices of the Pickings associated with the Batch,
but the report is being launched from the Batch. So, the header and footer
belongs to the Batch.
Within that report, calls are made to the invoice or delivery note reports,
but the check to see if the name of the document has to be printed in the
footer is done on the Batch.
Therefore, if you set the configuration parameter to "stock.picking, account.move"
, the names printed from that report will not appear.
By setting it to "stock.picking.batch", the module will establish that all the
documents contained in that report (whether invoices or delivery notes)
must include the name in the footer.
### Implementation Details
The pagination and document name positioning is implemented differently across report layouts:
**Layouts using `replace` (`Standard`, `Folder`):**
- The entire report_footer container div is **replaced** to recreate the structure with the pagination moved below the company footer
- This approach is necessary because these layouts use `<div t-field="company.report_footer"/>` instead of `<span>`, and you cannot add child elements inside the element.
- The original pagination div is deleted first, then the new structure is created with both the company footer and pagination in the correct order
**Other layouts (`Striped`, `Boxed`, `Bold`, `Bubble`, `Wave`):**
- Elements are repositioned using `move` operations or by adding CSS classes (`float-start`, `float-end`)
In all cases, the comma separator originally present in the document name is removed by modifying the `t-out` attribute.