Background Data Export | Odoo Large Export Without Crashing | Bulk Async Export Queue | Excel & CSV Export Download Center
by CODEerts https://www.codeerts.com$ย 29.01
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 482 |
| Technical Name |
codeerts_background_export |
| License | OPL-1 |
| Website | https://www.codeerts.com |
| Versions | 17.0 18.0 19.0 |
Background Data Export
Export large data in the background so Odoo never freezes or crashes,
and grab each finished file from a per-user download center.
Small exports still download instantly. Large ones run in a self-owned queue and appear in a new download button in the top bar when ready.
|
0
Browser Freezes
|
Any
Row Count
|
Per-User
Download Center
|
Auto
File Cleanup
|
19.0
Odoo Version
|
The export problem every Odoo team knows
Exporting a big list can freeze the browser or time out the server
|
The browser freezes
Exporting tens of thousands of rows locks the tab while the file builds. Users stare at a frozen screen, unsure whether to keep waiting or kill it and lose the work. |
The request times out
A large export can hit the server request limit and fail outright, so the whole job is lost and has to be retried later, often when the server is just as busy. |
No home for the file
Even when an export works, there is no personal place to find it later. Miss the one download prompt and you have to run the whole export again. |
What this module does
Background Data Export keeps the standard Odoo export you already use. Small exports download instantly, exactly as before. When an export is larger than a row threshold you set, it is handed to a background queue that builds the Excel or CSV file on the server, so the browser never freezes and the request never times out.
The moment a large export is queued, a clear notification tells the user it is running in the background. When the file is ready, a per-user download center in the top bar lights up with a red counter, one click downloads it, and finished files clean themselves up after a retention period you choose.
|
๐ค
Keeps the standard Export
Uses the native Export dialog and Export All, so nothing changes for your team. Only exports over your threshold are diverted to the background. |
โณ
Runs without freezing
Large exports build on the server in a queue the module ships itself, so the browser stays responsive and the request never times out. |
โฌ๏ธ
Your own download center
A per-user button in the top bar shows a red counter when exports are ready, with Download, expiry and who created it, private to you. |
|
๐งต Ships its own queue
Built on Odoo scheduled actions, with no OCA queue_job and no extra service to install or run. It depends only on the standard web and bus modules. |
๐ Private to each user
A record rule filters the list per user, so everyone sees only their own exports and never anyone else's, in the download center and the backend list alike. |
|
๐ Excel and CSV
Produces the same xlsx and CSV files as the native export, honoring the fields you selected and the import-compatible option. |
โฑ๏ธ Animated progress
While an export builds, an animated bar and a Running label show it is in progress, so users always know it is working, not stuck. |
|
๐๏ธ Delete anytime
A trash button removes an export and its file from the filestore immediately, right after you download it, so nothing lingers on disk. |
๐งน Automatic cleanup
Finished files expire after a retention period you set and are removed by a daily cleanup, keeping the filestore tidy without any manual work. |
|
๐ Hidden from other views
Export files are stored so they never appear in Documents or attachment managers. They show up only in your own download center. |
โ๏ธ Configurable threshold
Choose the row count that separates an instant download from a background export, and the retention days, right in Settings. |
How it works
1 |
Export as you always do
Select records and open the standard Export dialog, or use Export All. Choose your fields and format the same way as today. |
2 |
Small stays instant, large goes to the queue
Under your threshold, the file downloads immediately. Over it, the export is queued and a notification confirms it is running in the background. |
3 |
The server builds the file
A scheduled action processes the queue and writes the Excel or CSV file, batching records so even very large exports finish cleanly. |
4 |
The download center lights up
A red counter appears on the top-bar button. Open it to download the file, see who created it and when it expires, or delete it. |
5 |
Files clean themselves up
After the retention period you set, a daily cleanup removes finished files from the filestore, so nothing is left behind. |
See it in action
From the export you already know to a file waiting in your download center.
Use the Export you already know
Select records and open the standard Export dialog. Pick your fields and choose Excel or CSV exactly as you do today. There is nothing new to learn.
Large exports go to the background
When the export is over your threshold, Odoo does not freeze. A clear notification confirms the export is running in the background and will appear when it is ready.
Grab it from your download center
A per-user button in the top bar lights up with a red counter, just like the Discuss and Activities icons. Open it to download each ready file, see who created it and when it expires, or delete it.
Admins see every export
A Background Exports list under Settings, Technical shows each job with its model, format, record count, state, owner and completion time.
Set your own rules
In Settings, choose the row threshold that sends an export to the background and how many days finished files are kept before the automatic cleanup removes them.
Technical information
|
Version
19.0
|
License
OPL-1
|
Editions
Community & Enterprise
|
Dependencies
Web & Bus
|
Technical name: codeerts_background_export ยท Depends on: web and bus (standard, Community-compatible) ยท Excel export uses: xlsxwriter, which ships with Odoo
Frequently asked questions
Install Background Data Export and use the normal Export button. Small exports download right away, and any export larger than your configured row threshold is handed to a background queue that builds the file without freezing or crashing Odoo. You collect it from a download button in the top bar when it is ready.
A per-user download center appears in the top navigation bar. It shows a red counter when exports are ready, and opening it lists each export with a Download button, who created it, when it was created, and when the file expires.
No. Each user only sees their own background exports. The list is filtered per user with a record rule, so exports stay private to the person who created them.
The row threshold is the number of rows above which an export is sent to the background instead of downloading instantly. It defaults to about 5,000 rows, and you can change it in Settings to match your server and your data size.
No. The module ships its own lightweight background queue built on Odoo scheduled actions, so there is nothing else to install or run. It depends only on the standard web and bus modules.
Finished export files are kept for a configurable retention period, seven days by default, then removed automatically by a daily cleanup, including the underlying file in the filestore. You can also delete any export yourself at any time.
Use the version selector at the top of this page to pick your Odoo release. Each branch is published as its own listing for that exact version and works on both Community and Enterprise.
The team behind this module
About CODEerts
Full-Service Odoo ERP Agency ยท Solutions That Scale
Every module in our store is built from real client work, tested in production and maintained long-term by a team of Odoo certified consultants. When you need more than an app, we deliver the full solution.
|
๐๏ธ Implementation
Full Odoo roll-outs from requirements to go-live, across any industry and company size. |
๐งฉ Custom Development
Bespoke modules, OWL components and business logic built precisely to your workflow. |
๐ Migrations
Zero-data-loss upgrades from older Odoo versions with full custom module porting. |
|
๐ Integrations
Payment gateways, shipping carriers, biometric devices, eCommerce and third-party APIs. |
๐ Odoo Audits
Performance, security and code-quality reviews that surface risks before they become problems. |
๐งโ๐ป Support & Training
Ongoing helpdesk, user training and monthly retainers so your team stays productive. |
|
Odoo
Certified
|
6+
Years
|
50+
Projects
|
10+
Industries
|
More from CODEerts
Other apps we build to make Odoo do more. Tap any card to open it on the Odoo Apps Store.
See every CODEerts app on the Odoo Apps Store.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Lines of code | 482 |
| Technical Name |
codeerts_background_export |
| License | OPL-1 |
| Website | https://www.codeerts.com |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module