diff --git a/base_external_dbsource/__manifest__.py b/base_external_dbsource/__manifest__.py
index 6d5861fe..50eb4283 100644
--- a/base_external_dbsource/__manifest__.py
+++ b/base_external_dbsource/__manifest__.py
@@ -19,6 +19,7 @@
'data': [
'views/base_external_dbsource.xml',
'security/ir.model.access.csv',
+ 'security/base_external_dbsource_security.xml',
],
'demo': [
'demo/base_external_dbsource.xml',
diff --git a/base_external_dbsource/models/base_external_dbsource.py b/base_external_dbsource/models/base_external_dbsource.py
index 69c6a355..ca6d7cf7 100644
--- a/base_external_dbsource/models/base_external_dbsource.py
+++ b/base_external_dbsource/models/base_external_dbsource.py
@@ -57,6 +57,11 @@ class BaseExternalDbsource(models.Model):
- SQLite: sqlite:///test.db
- Elasticsearch: https://user:%s@localhost:9200
""")
+ company_id = fields.Many2one(
+ comodel_name='res.company',
+ string='Company',
+ default=lambda self: self.env.user.company_id,
+ )
conn_string_full = fields.Text(
readonly=True,
compute='_compute_conn_string_full',
diff --git a/base_external_dbsource/security/base_external_dbsource_security.xml b/base_external_dbsource/security/base_external_dbsource_security.xml
new file mode 100644
index 00000000..ecc48580
--- /dev/null
+++ b/base_external_dbsource/security/base_external_dbsource_security.xml
@@ -0,0 +1,11 @@
+
+
+
+
+ External Database Source Multicompany
+
+
+ ['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]
+
+
+
diff --git a/base_external_dbsource/views/base_external_dbsource.xml b/base_external_dbsource/views/base_external_dbsource.xml
index dcc72961..78b0165e 100644
--- a/base_external_dbsource/views/base_external_dbsource.xml
+++ b/base_external_dbsource/views/base_external_dbsource.xml
@@ -24,6 +24,8 @@
+