← All use casesGetting a report out of Odoo
The report you need is rarely the report that ships. Odoo's built-in views answer the questions Odoo anticipated; the ones that matter to your business tend to cut across modules in a way no standard view does.
So people export to Excel and rebuild it by hand every month. That works until the person who built the spreadsheet is on holiday, or until someone asks what changed.
CodeCobra takes the question in business terms — margin by product line, orders at risk of missing their date, revenue against target by rep — and either pulls it as a spreadsheet you can send straight on, builds it as a dashboard, or puts it into Odoo as a proper saved view your team can reach themselves.
The distinction matters. A one-off question wants a spreadsheet. A question you'll ask every Monday wants building into Odoo, where it stays live and nobody has to remember the steps.
What people asked, and what came back
Real production requests, condensed and with anything identifying removed.
OwnerManufacturing
Can you build me a dashboard where I can see the cost of finished products against my price lists, and the margin if I sell at each price?
What happened: Built the margin dashboard in Odoo. When a pivot showed impossible values on zero-stock rows it found the bug, fixed it, and verified exactly 39 cells changed with the pivots untouched.
ControllerManufacturing
Please send me a list of customers that owe money above 90 days.
What happened: Generated the overdue receivables list straight out of the live ledger.
ControllerDistribution
The follow-up report should let me choose which report goes in the email body, multi-select the detail reports as attachments, and send PDF, Excel or both.
What happened: Built the whole configurable wizard, added a regression test, and verified all four attachment files appear — with a screenshot.
OperationsDistribution
Create a month-to-month business health analysis for the last two years.
What happened: Pulled the ledger, built the month-over-month view, and wrote the read-out in plain language.
OperationsDistribution
101701 110200 110300 110400 49100
What happened: Understood the GL codes from context alone and exported the year's journal entries for each account into one spreadsheet.
ControllerManufacturing
I need a commission report like we had in the past — easy to read, scoped to one salesperson's accounts.
What happened: Rebuilt the report in the old readable format, scoped to that salesperson, with the landed-cost breakdown included.
More requests in this category
- Give me a monthly gross-margin report by product category for this year.Controller · Manufacturing
- Build a saved view of deliveries scheduled this week, grouped by route.Operations · Distribution
- Who were my top 20 customers by revenue this quarter, with their payment terms?Owner · Retail
- Export all vendor bills over $5,000 from Q2 into a spreadsheet with their PO numbers.Controller · Distribution
- Show me scrap rates by work center for the last 90 days.Operations · Manufacturing
- Which products haven't sold a single unit in six months but still hold stock?Buyer · Wholesale
Do I get a spreadsheet or something inside Odoo?
Whichever you ask for. A spreadsheet is a snapshot you can circulate immediately. A saved view or report inside Odoo stays live and your team can reach it without you. If you're going to want it repeatedly, build it into Odoo.
Can it produce real Excel files, not CSV?
Yes — .xlsx workbooks with real formulas, number formatting and multiple sheets. Totals recalculate when you edit them.
What if the numbers look wrong?
Ask in the same conversation. It still has the connection it built the report from, so it can go back to the source records and explain a specific line.