[IMP] base_external_dbsource: Refactor & Split by source

* Heavily refactor code for reusability
* Split all sources into independent modules
* Add more test coverage
* Add CRUD methods
* Add iterator execute return to roadmap
This commit is contained in:
Dave Lasley
2016-12-07 18:28:41 -08:00
committed by bilbonet
parent ed129bcf2e
commit 6421f19e64
9 changed files with 584 additions and 217 deletions

View File

@@ -19,18 +19,11 @@ Configuration
Database sources can be configured in Settings > Configuration -> Data sources.
Depending on the database, you need:
* to install unixodbc and python-pyodbc packages to use ODBC connections.
* to install FreeTDS driver (tdsodbc package) and configure it through ODBC to connect to Microsoft SQL Server.
* to install and configure Oracle Instant Client and cx_Oracle python library to connect to Oracle.
* to install fdb package to connect in Firebird.
Usage
=====
To use this module:
-------------------
* Go to Settings > Database Structure > Database Sources
* Click on Create to enter the following information:
@@ -38,24 +31,35 @@ To use this module:
* Data source name 
* Password
* Connector: Choose the database to which you want to connect
* Connection string : Specify how to connect to database
* Connection string: Specify how to connect to database
To extend this module:
----------------------
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/149/9.0 for server-tools
:target: https://runbot.odoo-community.org/runbot/149/10.0 for server-tools
Known issues / Roadmap
======================
* Find a way to remove or default the CA certs dir
* Add concept of multiple connection strings for one source (multiple nodes)
* Add a ConnectionEnvironment that allows for the reuse of connections
* Message box should be displayed instead of error in ``connection_test``
* Remove old api compatibility layers (v11)
* Instead of returning list of results, we should return iterators. This will support
larger datasets in a more efficient manner.
* Implement better CRUD handling
Bug Tracker
===========
Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-tools/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us smashing it by providing a detailed and welcomed feedback `here <https://github.com/OCA/
server-tools/issues/new?body=module:%20
base_external_dbsource%0Aversion:%20
9.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
If you spotted it first, help us smashing it by providing a detailed and welcomed feedback.
Credits
=======
@@ -66,7 +70,7 @@ Contributors
* Daniel Reis <dreis.pt@hotmail.com>
* Maxime Chambreuil <maxime.chambreuil@savoirfairelinux.com>
* Gervais Naoussi <gervaisnaoussi@gmail.com>
* Michell Stuttgart <michellstut@gmail.com>
* Dave Lasley <dave@laslabs.com>
Maintainer
----------