Skip to Content

Excel/CSV Export Template

74.55 74.55

Instant digital delivery after payment confirmation.
License: OPL-1, every download is watermarked.
Terms and Conditions
Compatible with Odoo 18.0 · 19.0
OPL-1 license · Odoo 18.0 & 19.0
Excel/CSV Export Template for Odoo — preview banner

Excel/CSV Export Template

Formatted, multi-sheet, styled Excel/CSV exports from any model with saved layouts

Odoo's native export gives you raw, unformatted data that still needs an hour of reformatting in Excel before anyone can read it, and the layout is lost the moment you close the dialog. This module lets business users build saved export templates against any model: pick and label columns (including dotted related paths), choose value types, widths and alignment, split records into multiple sheets, and produce a styled XLSX or a clean, correctly-encoded CSV in one click. Templates are stored records, so a layout is built once and re-run forever, run against the current selection through a wizard, or scheduled to email the file to recipients on an interval. It removes the manual spreadsheet rework that eats analyst and finance time every reporting cycle.

Key Features

Saved export templates on any model

The gb.export.template record targets any ir.model and holds an ordered set of gb.export.column lines. Each column has a field path, custom header label, value type (text/number/currency/date/percent/boolean), width and alignment, so business users save a layout once and re-run it forever without touching code.

One-click column auto-population

The action_populate_columns button scans the chosen model's stored, non-technical fields and creates up to 30 ready-to-use columns with sensible value types guessed from each field. You start from a full layout in one click instead of typing field names by hand.

Styled XLSX workbooks via xlsxwriter

build_xlsx renders a presentable workbook: bold coloured header (header_bg_color/header_font_color), frozen header row, auto-filter, zebra striping and per-column number formats. The result looks finished, so it goes straight to management without manual reformatting in Excel.

Multi-sheet split by field value

Set split_by_field and _plan_sheets groups records into one worksheet per distinct value, sanitising names to Excel's 31-char limit. A single export becomes a tidy per-team, per-category or per-month workbook automatically.

Totals row with per-column sums

Tick sum_column on numeric columns and enable add_totals_row to append a bold TOTAL line that sums those columns across every record. Numeric-only validation prevents summing text, so the footer is always meaningful in both XLSX and CSV.

Clean configurable CSV output

build_csv lets you pick the delimiter (comma/semicolon/tab), quoting (minimal or quote-all) and encoding (UTF-8, UTF-8 with BOM, or Latin-1). Downstream systems import the file without broken columns or mojibake.

Dotted-path field resolution

Column read_value follows dotted paths such as partner_id.country_id.name and coerces relational records to their display name (joining multiple values). You export related data several hops away without building an intermediate view.

Run wizard against the current selection

The gb.export.run.wizard reads active_ids from the calling list view so users export exactly the records they highlighted, or fall back to the template's default domain, order_by and row limit. action_download streams the generated file as an attachment.

Scheduled email delivery via cron

A gb.export.schedule ties a template to an interval and recipient partners; the cron_run_due job picks up due schedules, generates the file and emails it via mail.mail, then advances next_run and run_count. Recurring reports land in inboxes with no one clicking export.

Use Cases

Finance team emails a styled monthly aged-receivables workbook to managers automatically every month
Sales ops exports the records selected in a list view to a branded XLSX for a board pack
Operations splits a stock-move export into one sheet per warehouse for regional reviews
Data team produces a Latin-1, semicolon-delimited CSV that imports cleanly into a legacy ERP
HR runs a saved headcount template with a totals row instead of reformatting raw exports in Excel
Accountant re-runs a partner-ledger layout each quarter without rebuilding columns or filters

Screenshots

Excel/CSV Export Template — Run Export in Odoo

Run Export

Excel/CSV Export Template — Scheduled Exports in Odoo

Scheduled Exports

Excel/CSV Export Template — Export Templates in Odoo

Export Templates

Why Choose This Module

Odoo's native export gives you raw, unformatted data. This module turns it into polished, reusable spreadsheets: build a saved export template against any model, pick and label columns, choose formats and widths, split into multiple sheets, and produce styled XLSX or clean CSV in one click — no code, no manual reformatting in Excel afterwards.

Specifications

  • Compatible: Odoo 18.0 / 19.0
  • License: OPL-1
  • Languages: English
  • Author: Pokutsoft
  • Dependencies: base, web
  • Support: support@pokutsoft.com

Update date: 2026-07-02