OERPLib is a Python RPC library which aims to provide an easy way to remotely pilot and manage an OpenERP server.
… image:: https://pypip.in/download/OERPLib/badge.svg
:target: https://pypi.python.org/pypi/OERPLib/
:alt: Downloads
… image:: https://pypip.in/version/OERPLib/badge.svg
:target: https://pypi.python.org/pypi/OERPLib/
:alt: Latest Version
… image:: https://pypip.in/license/OERPLib/badge.svg
:target: https://pypi.python.org/pypi/OERPLib/
:alt: License
OERPLib is a Python module providing an easy way to
pilot your OpenERP and Odoo servers through RPC
.
Features supported:
- XML-RPC
and (legacy) Net-RPC
protocols,
- access to all methods proposed by a model class
(even browse
) with an API similar to the server-side API,
- ability to use named parameters with such methods (server >= 6.1
),
- user context automatically sent (server >= 6.1
) providing support
for internationalization,
- browse records,
- execute workflows,
- manage databases,
- reports downloading,
- inspection capabilities (graphical output of relations between models and
dependencies between modules, list on_change
methods from model
views, …).
How does it work? See below:
… code-block:: python
import oerplib
# Prepare the connection to the server
oerp = oerplib.OERP('localhost', protocol='xmlrpc', port=8069)
# Check available databases
print(oerp.db.list())
# Login (the object returned is a browsable record)
user = oerp.login('user', 'passwd', 'db_name')
print(user.name) # name of the user connected
print(user.company_id.name) # the name of its company
# Simple 'raw' query
user_data = oerp.execute('res.users', 'read', [user.id])
print(user_data)
# Use all methods of an OSV class
order_obj = oerp.get('sale.order')
order_ids = order_obj.search([])
for order in order_obj.browse(order_ids):
print(order.name)
products = [line.product_id.name for line in order.order_line]
print(products)
# Update data through a browsable record
user.name = "Brian Jones"
oerp.write_record(user)
See the documentation for more details and features.
OERPLib
has been tested on OpenERP
server v5.0, v6.0, v6.1, v7.0 and
Odoo v8.0.
It should work on next versions if Odoo
keeps a stable API.
OERPLib
support Python versions 2.6, 2.7.
This software is made available under the LGPL v3
license.
To generate the documentation, you have to install Sphinx
documentation
generator::
easy_install -U sphinx
Then, you can use the build_doc
option of the setup.py
::
python setup.py build_doc
The generated documentation will be in the ./doc/build/html
directory.
Please, feel free to report bugs or suggestions in the Bug Tracker <https://github.com/osiell/oerplib/issues>
_!
Consult the CHANGELOG.rst
file.