Repository
OCA/server-backend · module folder · Try on Runboat
Module version
1.0.0
Category
Tools
Folder size
0.5 MB
License
LGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/server-backend
Last tracking update
2026-08-07 09:06:34
Authors
Odoo Community Association (OCA), Daniel Reis, LasLabs
Maintainers
Odoo Community Association (OCA), Daniel Reis, LasLabs
Committers
Maxime Chambreuil, Jesús Alan Ramos Rodríguez, Weblate, OCA-git-bot, oca-ci
Odoo dependencies
odoo/odoo:
Python dependencies
None
System dependencies
None
Required by
kpi
Description
This module allows you to define connections to foreign databases using
ODBC, Firebird, Oracle Client or SQLAlchemy.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
view_dbsource_form base.external.dbsource.form base.external.dbsource form New
view_dbsource_tree base.external.dbsource.list base.external.dbsource list New
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (1)

New fields (9)
  • ca_certs Char
    help='Path to CA Certs file on server.'
  • client_cert Text
  • client_key Text
  • company_id Many2one → res.company
    comodel_name='res.company' default=<expr> string='Company'
  • conn_string Text
    help="\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 " args: 'Connection string'
  • conn_string_full Text
    compute='_compute_conn_string_full' readonly=True
  • connector Selection
    help='If a connector is missing from the list, check the server log to confirm that the required components were detected.' required=True args: CONNECTORS
  • name Char
    required=True args: 'Datasource name'
  • password Char
Public methods (15)
  • change_table(self, name)
    Change the table that is used for CRUD operations
  • conn_open(self)
    It opens and returns a connection to the remote data source. This method calls adapter method of this same name, suffixed with the adapter type. Deprecate: This method has been replaced with ``connection_open``.
  • connection_close(self, connection)
    It closes the connection to the data source. This method calls adapter method of this same name, suffixed with the adapter type.
  • connection_close_postgresql(self, connection)
  • connection_open(self)
    @contextmanager
    It provides a context manager for the data source. This method calls adapter method of this same name, suffixed with the adapter type.
  • connection_open_postgresql(self)
  • connection_test(self)
    It tests the connection Raises: Validation message with the result of the connection (fail or success)
  • current_table(self)
    @property
  • execute(self, query=None, execute_params=None, metadata=False, **kwargs)
    Executes a query and returns a list of rows. "execute_params" can be a dict of values, that can be referenced in the SQL statement using "%(key)s" or, in the case of Oracle, ":key". Example: query = "SELECT * FROM mytable WHERE city = %(city)s AND date > %(dt)s" execute_params = { 'city': 'Lisbon', 'dt': datetime.datetime(2000, 12, 31), } If metadata=True, it will instead return a dict containing the rows list and the columns list, in the format: { 'cols': [ 'col_a', 'col_b', ...] , 'rows': [ (a0, b0, ...), (a1, b1, ...), ...] }
  • execute_postgresql(self, query, params, metadata)
  • remote_browse(self, record_ids, *args, **kwargs)
    It browses for and returns the records from remote by ID This method calls adapter method of this same name, suffixed with the adapter type. Args: record_ids: (list) List of remote IDs to browse. *args: Positional arguments to be passed to adapter method. **kwargs: Keyword arguments to be passed to adapter method. Returns: (iter) Iterator of record mappings that match the ID.
  • remote_create(self, vals, *args, **kwargs)
    It creates a record on the remote data source. This method calls adapter method of this same name, suffixed with the adapter type. Args: vals: (dict) Values to use for creation. *args: Positional arguments to be passed to adapter method. **kwargs: Keyword arguments to be passed to adapter method. Returns: (mapping) A mapping of the record that was created.
  • remote_delete(self, record_ids, *args, **kwargs)
    It deletes records by ID on remote This method calls adapter method of this same name, suffixed with the adapter type. Args: record_ids: (list) List of remote IDs to delete. *args: Positional arguments to be passed to adapter method. **kwargs: Keyword arguments to be passed to adapter method. Returns: (iter) Iterator of bools indicating delete status.
  • remote_search(self, query, *args, **kwargs)
    It searches the remote for the query. This method calls adapter method of this same name, suffixed with the adapter type. Args: query: (mixed) Query domain as required by the adapter. *args: Positional arguments to be passed to adapter method. **kwargs: Keyword arguments to be passed to adapter method. Returns: (iter) Iterator of record mappings that match query.
  • remote_update(self, record_ids, vals, *args, **kwargs)
    It updates the remote records with the vals This method calls adapter method of this same name, suffixed with the adapter type. Args: record_ids: (list) List of remote IDs to delete. *args: Positional arguments to be passed to adapter method. **kwargs: Keyword arguments to be passed to adapter method. Returns: (iter) Iterator of record mappings that were updated.

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…

Loading…