Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
083809d
CHG: adapted to base_external_dbsource; code refactored
Sep 12, 2012
ca31e3a
[CHG] simplified dbsource.execute api to a single method with two pos…
dreispt Sep 13, 2012
2fdeb65
[IMP] Update to v7 menu structure and dos2unix conversion
Oct 30, 2012
86b62c7
move all modules to __unported__ on master branch and set installable…
sbidoul Jul 12, 2014
6477444
base_external_dbsource and import_odbc modules moved out of __unporte…
Aug 21, 2014
20364fc
Activate base_external_dbsource
bwrsandman May 26, 2015
d9c4ed2
[MIG] base external dbsource
naousse Sep 8, 2016
e56f7b3
[MIG][10.0] base_external_dbsource (#578)
jlzhou Nov 25, 2016
b2a9fb7
[10.0] Add Firebird database support to base_external_dbsource (#623)
mstuttgart Nov 30, 2016
4fd53a9
Relicense to LGPL
dreispt Dec 7, 2016
fddfa8c
[IMP] base_external_dbsource: Refactor & Split by source
lasley Dec 8, 2016
bf60114
[FIX] base_external_dbsource: Fix PQ connection
lasley Jul 10, 2017
89077d9
[11.0][MIG] base_external_dbsource: Migration to v11.0
sergio-teruel Jun 27, 2018
6752c3b
[12.0][MIG] Migrate module base_external_dbsource
AdriaGForgeFlow Nov 30, 2018
2e26420
Translated using Weblate (Portuguese (Brazil))
Sep 2, 2019
a19e6f9
[FIX] base_external_dbsource: Reuse Odoo DB settings for tests
yajo Mar 28, 2019
4281e46
[MIG] base_external_dbsource: Migration to v13.0
sergio-teruel Jan 9, 2020
11ae559
[IMP] base_external_dbsource: black, isort, prettier
Bilbonet Jul 13, 2021
c1b895e
[MIG] base_external_dbsource: Migration to 14.0
Bilbonet Jul 13, 2021
3a69356
[FIX] pre-commit
Bilbonet Oct 5, 2021
b873e13
little change
Bilbonet Mar 1, 2022
7c05960
[IMP] base_external_dbsource: Add company field to backend
sergio-teruel Sep 7, 2018
a565300
[FIX]
Bilbonet Aug 17, 2022
fa45920
[FIX] base_external_dbsource: Remove tests that do not work and canno…
victoralmau Nov 14, 2022
213f199
[MIG] base_external_dbsource: Migration to v15.0
carlosdauden Aug 30, 2022
b77c81d
Translated using Weblate (Italian)
mymage Mar 23, 2023
a10cdfb
[16.0][MIG] base_external_dbsource: Migration to 16.0
Mar 30, 2023
5e6b873
Translated using Weblate (Slovenian)
sysadminmatmoz Apr 11, 2023
e19b44e
Translated using Weblate (Spanish)
Ivorra78 Aug 25, 2023
098b274
[UPD] README.rst
OCA-git-bot Sep 3, 2023
71c4657
Update translation files
weblate Oct 9, 2023
7a2dae5
Translated using Weblate (Portuguese (Brazil))
May 29, 2024
bc0150f
[IMP] base_external_dbsource: pre-commit auto fixes
Anxo82 Jun 5, 2024
58ae6e8
[MIG] base_external_dbsource: Migration to 17.0
Anxo82 Jun 10, 2024
3656088
[UPD] Update base_external_dbsource.pot
Jul 24, 2024
1b0526d
[BOT] post-merge updates
OCA-git-bot Jul 24, 2024
cdd355b
Update translation files
weblate Jul 24, 2024
4fb13a6
Translated using Weblate (Italian)
mymage Jul 29, 2024
22a78c0
[IMP] base_external_dbsource: pre-commit auto fixes
HviorForgeFlow Jan 16, 2025
89605dd
[MIG] base_external_dbsource: Migration to 18.0
HviorForgeFlow Jan 16, 2025
f85de58
[UPD] Update base_external_dbsource.pot
Jun 25, 2025
0af9ac1
[BOT] post-merge updates
OCA-git-bot Jun 25, 2025
cfd9c0d
[IMP] base_external_dbsource: pre-commit auto fixes
alan196 Feb 1, 2026
e40fcfe
[MIG] base_external_dbsource: Migration to 19.0
alan196 Feb 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
127 changes: 127 additions & 0 deletions base_external_dbsource/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
.. image:: https://odoo-community.org/readme-banner-image
:target: https://odoo-community.org/get-involved?utm_source=readme
:alt: Odoo Community Association

=========================
External Database Sources
=========================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:8247786da44828b0bff0b2db5355aba5fff1c5aa7fb9c9a14c3c33615f0b61dc
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/license-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--backend-lightgray.png?logo=github
:target: https://github.com/OCA/server-backend/tree/19.0/base_external_dbsource
:alt: OCA/server-backend
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/server-backend-19-0/server-backend-19-0-base_external_dbsource
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/server-backend&target_branch=19.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module allows you to define connections to foreign databases using
ODBC, Firebird, Oracle Client or SQLAlchemy.

**Table of contents**

.. contents::
:local:

Installation
============

No installation required.

Configuration
=============

To configure this module, you need to:

1. Database sources can be configured in Settings > Technical > Database
Structure > Data sources.

Usage
=====

- Go to Settings > Technical > Database Structure > Database Sources
- Click on Create to enter the following information:
- Data source name 
- Password
- Connector: Choose the database to which you want to connect
- Connection string: Specify how to connect to database

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-backend/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/server-backend/issues/new?body=module:%20base_external_dbsource%0Aversion:%2019.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Daniel Reis
* LasLabs

Contributors
------------

- Daniel Reis <dreis.pt@hotmail.com>
- Maxime Chambreuil <maxime.chambreuil@savoirfairelinux.com>
- Gervais Naoussi <gervaisnaoussi@gmail.com>
- Dave Lasley <dave@laslabs.com>
- `Tecnativa <https://www.tecnativa.com>`__:

- Sergio Teruel
- Jairo Llopis
- Andrea Cattalani (`Moduon <https://www.moduon.team/>`__)

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/server-backend <https://github.com/OCA/server-backend/tree/19.0/base_external_dbsource>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions base_external_dbsource/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
20 changes: 20 additions & 0 deletions base_external_dbsource/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# Copyright <2011> <Daniel Reis, Maxime Chambreuil, Savoir-faire Linux>
# Copyright <2016> <Henry Zhou MAXodoo>
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl).
{
"name": "External Database Sources",
"version": "19.0.1.0.0",
"category": "Tools",
"author": "Daniel Reis, LasLabs, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/server-backend",
"license": "LGPL-3",
"images": ["images/screenshot01.png"],
"depends": ["base"],
"data": [
"views/base_external_dbsource.xml",
"security/ir.model.access.csv",
"security/base_external_dbsource_security.xml",
],
"demo": ["demo/base_external_dbsource.xml"],
"installable": True,
}
9 changes: 9 additions & 0 deletions base_external_dbsource/demo/base_external_dbsource.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
<?xml version="1.0" ?>
<odoo noupdate="1">
<record model="base.external.dbsource" id="demo_postgre">
<field name="name">PostgreSQL local</field>
<field name="conn_string">dbname='postgres' password=%s</field>
<field name="password">postgresql</field>
<field name="connector">postgresql</field>
</record>
</odoo>
195 changes: 195 additions & 0 deletions base_external_dbsource/i18n/am.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,195 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * base_external_dbsource
#
# Translators:
# Pedro M. Baeza <pedro.baeza@gmail.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 9.0c\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-09-10 02:52+0000\n"
"PO-Revision-Date: 2016-09-10 02:52+0000\n"
"Last-Translator: Pedro M. Baeza <pedro.baeza@gmail.com>, 2016\n"
"Language-Team: Amharic (https://www.transifex.com/oca/teams/23907/am/)\n"
"Language: am\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. module: base_external_dbsource
#: model:ir.model.fields,help:base_external_dbsource.field_base_external_dbsource__conn_string
msgid ""
"\n"
" Sample connection strings:\n"
" - Microsoft SQL Server:\n"
" mssql+pymssql://username:%s@server:port/dbname?charset=utf8\n"
" - MySQL: mysql://user:%s@server:port/dbname\n"
" - ODBC: DRIVER={FreeTDS};SERVER=server.address;Database=mydb;UID=sa\n"
" - ORACLE: username/%s@//server.address:port/instance\n"
" - PostgreSQL:\n"
" dbname='template1' user='dbuser' host='localhost' "
"port='5432' password=%s\n"
" - SQLite: sqlite:///test.db\n"
" - Elasticsearch: https://user:%s@localhost:9200\n"
" "
msgstr ""

#. module: base_external_dbsource
#. odoo-python
#: code:addons/base_external_dbsource/models/base_external_dbsource.py:0
#, python-format
msgid ""
"\"%(method)s\" method not found, check that all assets are installedfor the "
"%(connector)s connector type."
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__ca_certs
msgid "Ca Certs"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__client_cert
msgid "Client Cert"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__client_key
msgid "Client Key"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__company_id
msgid "Company"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__conn_string_full
msgid "Conn String Full"
msgstr ""

#. module: base_external_dbsource
#: model_terms:ir.ui.view,arch_db:base_external_dbsource.view_dbsource_form
msgid "Connection String"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__conn_string
msgid "Connection string"
msgstr ""

#. module: base_external_dbsource
#. odoo-python
#: code:addons/base_external_dbsource/models/base_external_dbsource.py:0
#, python-format
msgid ""
"Connection test failed:\n"
"Here is what we got instead:\n"
"%s"
msgstr ""

#. module: base_external_dbsource
#. odoo-python
#: code:addons/base_external_dbsource/models/base_external_dbsource.py:0
#, python-format
msgid ""
"Connection test succeeded:\n"
"Everything seems properly set up!"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__connector
msgid "Connector"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__create_uid
msgid "Created by"
msgstr "Creado por"

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__create_date
msgid "Created on"
msgstr "Creado en"

#. module: base_external_dbsource
#: model:ir.ui.menu,name:base_external_dbsource.menu_dbsource
msgid "Database Sources"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__name
msgid "Datasource name"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__display_name
msgid "Display Name"
msgstr ""

#. module: base_external_dbsource
#: model_terms:ir.ui.view,arch_db:base_external_dbsource.view_dbsource_form
msgid "External DB Source"
msgstr ""

#. module: base_external_dbsource
#: model:ir.actions.act_window,name:base_external_dbsource.action_dbsource
#: model:ir.model,name:base_external_dbsource.model_base_external_dbsource
msgid "External Database Sources"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__id
msgid "ID"
msgstr "ID"

#. module: base_external_dbsource
#: model:ir.model.fields,help:base_external_dbsource.field_base_external_dbsource__connector
msgid ""
"If a connector is missing from the list, check the server log to confirm "
"that the required components were detected."
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__write_uid
msgid "Last Updated by"
msgstr "Última actualización por"

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__write_date
msgid "Last Updated on"
msgstr "Última actualización en"

#. module: base_external_dbsource
#: model:ir.model.fields,field_description:base_external_dbsource.field_base_external_dbsource__password
msgid "Password"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields,help:base_external_dbsource.field_base_external_dbsource__ca_certs
msgid "Path to CA Certs file on server."
msgstr ""

#. module: base_external_dbsource
#: model_terms:ir.ui.view,arch_db:base_external_dbsource.view_dbsource_form
msgid "Please check the tooltip for connection string examples"
msgstr ""

#. module: base_external_dbsource
#: model:ir.model.fields.selection,name:base_external_dbsource.selection__base_external_dbsource__connector__postgresql
msgid "PostgreSQL"
msgstr ""

#. module: base_external_dbsource
#: model_terms:ir.ui.view,arch_db:base_external_dbsource.view_dbsource_form
msgid "Test Connection"
msgstr ""

#. module: base_external_dbsource
#. odoo-python
#: code:addons/base_external_dbsource/models/base_external_dbsource.py:0
#, python-format
msgid "query is a required argument"
msgstr ""
Loading