dlfsdjfl
gasdf
Read the full articleMore postsWhere QWeb reports go wrong, and how to tell quicklyMost broken PDFs come down to one of four things: a missing paper format, a field that is empty in production, wkhtmltopdf disagreeing with your CSS, or a t-foreach over the wrong recordset. A short triage order that finds it fast.Shipping a module to the Odoo Apps storePublishing is its own small project: the manifest, the screenshots, the version branches, and the review notes that come back. Notes from getting a POS module through, and the things I would prepare earlier next time.Planning an Odoo migration you can actually roll backThe scripts matter less than the order you run them in. How I audit custom modules first, port deprecated APIs before touching data, and keep a parity check after every run so a bad migration is a restore rather than a rebuild.