Skip to main content
License: LGPL-3 https://badge.fury.io/py/dodoo-loader.svg

dodoo-loader is a set of useful Odoo maintenance functions. They are available as CLI scripts (based on dodoo), as well as composable python functions.

Script

Usage: dodoo-loader [OPTIONS]

  Loads data into an Odoo Database.

  Supply data by file or stream in a supported format and load it into a
  local or remote Odoo database.

  Highlights:

  • Detects model-level dependency on related fields and record-level
  dependencies in tree-like tables (hierarchies). Cares to load everything
  in the correct order*.

  • Supported formats: JSON, CSV, XLS & XLSX

  • Logs success to --out. Next runs deduplicate based on those logs.

  • [TBD] Can trigger onchange as if data was entered through forms.

  Note: record-level dependency detection only works with parent columns
  ending in /.id (db ID) or /id (ext ID). Either one must match the
  principal id or .id column (to which it refers).

  Note: For UX and security reasons, nested semantics (as in Odoo) are not
  supported as they usually are undeterministic (lack of identifier on the
  nested levels). That's too dangerous for ETL.

Options:
  -f, --file FILENAME         Path to the file, that you want to load. You can
                              specify this option multiple times for more than
                              one file to load.
  -s, --stream TEXT...        [stream type model] Stream, you want to load.
                              `type` can be csv or json. `model` can be any
                              odoo model availabe in env. You can specify this
                              option multiple times for more than one stream
                              to load.
  --onchange / --no-onchange  [TBD] Trigger onchange methods as if data was
                              entered through normal form views.  [default:
                              True]
  --batch INTEGER             The batch size. Records are cut-off for
                              iteration after so many records.  [default: 50]
  --out FILENAME              Log success into a json file.  [default:
                              ./log.json]
  --logfile FILE              Specify the log file.
  -d, --database TEXT         Specify the database name. If present, this
                              parameter takes precedence over the database
                              provided in the Odoo configuration file.
  --log-level TEXT            Specify the logging level. Accepted values
                              depend on the Odoo version, and include debug,
                              info, warn, error.  [default: info]
  -c, --config FILE           Specify the Odoo configuration file. Other ways
                              to provide it are with the ODOO_RC or
                              OPENERP_SERVER environment variables, or
                              ~/.odoorc (Odoo >= 10) or ~/.openerp_serverrc.
  --help                      Show this message and exit.

Credits

Contributors:

  • David Arnold (XOE)

Maintainer

XOE Corps. SAS

Changes

Future (?)

  • Flatten out nested data

  • More tests

0.6.5 (2019-05-05)

  • Simplify repo structure

  • Fix package namespace issues

  • Fix issue with future str type

0.5.2 (2018-12-05)

  • Add addons-path option

0.0.3 (2018-10-25)

  • Green tests from 8.0 to master

0.0.2 (2018-10-12)

  • Initial alpha

  • 17% test coverage

Metadata

Release files for dodoo-loader 0.6.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dodoo-loader 0.6.5
File Size Uploaded
dodoo-loader-0.6.5.tar.gz 39.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dodoo-loader 0.6.5
File Interpreter ABI Platform
dodoo_loader-0.6.5-py2.py3-none-any.whl Python 3, Python 2 none any Details

Total release size: 52.4 kB

Release files / dodoo-loader-0.6.5.tar.gz

Download URL dodoo-loader-0.6.5.tar.gz
Size 39.7 kB
Tags Source
SHA-256 checksum
How to use checksums
7712c15a40b24f0e909665b725ac3b8f1c2fba42ebface0af97a5d86cc7d10cd
BLAKE2b-256 checksum
How to use checksums
3705ea12f4a20226303cd338835b760c8026e25331cbc5ba7193611df1123917
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.3

Release files / dodoo_loader-0.6.5-py2.py3-none-any.whl

Download URL dodoo_loader-0.6.5-py2.py3-none-any.whl
Size 12.7 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
5ee6e338608bf545b6b3f5bb044448db5b14d033c45d453338b7d1db60e8fbba
BLAKE2b-256 checksum
How to use checksums
8d26ef9fe2c57da04c23817eb9ac6902c9d6d7651341d7262138515f2d2e0090
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.3

Release history Release notifications | RSS feed

This release

0.6.5 This release

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page