Odoo Connector for CData Sync

Build 23.0.8839
  • Odoo
    • Establishing a Connection
    • Advanced Features
      • SSL Configuration
      • Firewall and Proxy
    • Data Model
      • Views
        • FieldReferences
    • Connection String Options
      • Authentication
        • URL
        • Database
        • OdooEdition
        • User
        • APIToken
        • CheckPermissions
      • SSL
        • SSLServerCert
      • Firewall
        • FirewallType
        • FirewallServer
        • FirewallPort
        • FirewallUser
        • FirewallPassword
      • Proxy
        • ProxyAutoDetect
        • ProxyServer
        • ProxyPort
        • ProxyAuthScheme
        • ProxyUser
        • ProxyPassword
        • ProxySSLType
        • ProxyExceptions
      • Logging
        • LogModules
      • Schema
        • Location
        • BrowsableSchemas
        • Tables
        • Views
        • AllowComputedFields
        • ExpandReferences
        • ShowParameterizedTables
        • UseDisplayNames
      • Miscellaneous
        • Language
        • MaxRows
        • Other
        • Pagesize
        • PseudoColumns
        • Timeout
        • UserDefinedViews

Odoo Connector for CData Sync

Overview

The CData Sync App provides a straightforward way to continuously pipeline your Odoo data to any database, data lake, or data warehouse, making it easily available for Analytics, Reporting, AI, and Machine Learning.

The Odoo connector can be used from the CData Sync application to pull data from Odoo and move it to any of the supported destinations.

Odoo Version Support

The Sync App can connect to Odoo version 8 and above. The Sync App leverages Odoo's XML-RPC interface which is made available by default in both the on-premise version and by many hosting services such as odoo.sh

Odoo Connector for CData Sync

Establishing a Connection

Adding a Connection to Odoo

To add a connection to Odoo:

  1. In the application console, navigate to the Connections page.
  2. At the Add Connections panel, select the icon for the connection you want to add.
  3. If the Odoo icon is not available, click the Add More icon to download and install the Odoo connector from the CData site.

For required properties, see the Settings tab.

For connection properties that are not typically required, see the Advanced tab.

Connecting to Odoo

To connect, set the Url to a valid Odoo site, User and APIToken to the connection details of the user you are connecting with, and Database to the Odoo database.

If you are not using API tokens (they are only supported in Odoo 14 and above), you can also provide the password in the APIToken field.

Access Rights

In order for the Sync App to determine what models you can access in Odoo, the user you connect with must have permissions to read from "ir.model.access" (an internal Odoo model that governs access rights). Normally this is reserved for administrators, but it can be granted to any user by creating a service group:
  1. As an administrator, open the Odoo settings page and enable "developer mode". If this is not available you may need to login as the superuser instead.
  2. Open the Groups page (under the Users dropdown) and create a new group
  3. Set the Application to "Administration" and the name to "Service Access"
  4. Add any users who need service access in the Users tab
  5. In the Access Rights tab, add an entry for the "ir.model.access" object (it may be called "Model Access"), check Read Access, and give it the name "Inspect Models"
  6. Save the group

If making this change is not possible, then you should set the CheckPermissions option to false. That will list all models in Odoo as tables, regardless of what permissions your user actually has for those models.

Odoo Connector for CData Sync

Advanced Features

This section details a selection of advanced features of the Odoo Sync App.

User Defined Views

The Sync App allows you to define virtual tables, called user defined views, whose contents are decided by a pre-configured query. These views are useful when you cannot directly control queries being issued to the drivers. See User Defined Views for an overview of creating and configuring custom views.

SSL Configuration

Use SSL Configuration to adjust how Sync App handles TLS/SSL certificate negotiations. You can choose from various certificate formats; see the SSLServerCert property under "Connection String Options" for more information.

Firewall and Proxy

Configure the Sync App for compliance with Firewall and Proxy, including Windows proxies and HTTP proxies. You can also set up tunnel connections.

Query Processing

The Sync App offloads as much of the SELECT statement processing as possible to Odoo and then processes the rest of the query in memory (client-side).

See Query Processing for more information.

Logging

See Logging for an overview of configuration settings that can be used to refine CData logging. For basic logging, you only need to set two connection properties, but there are numerous features that support more refined logging, where you can select subsets of information to be logged using the LogModules connection property.

Odoo Connector for CData Sync

SSL Configuration

Customizing the SSL Configuration

By default, the Sync App attempts to negotiate SSL/TLS by checking the server's certificate against the system's trusted certificate store.

To specify another certificate, see the SSLServerCert property for the available formats to do so.

Odoo Connector for CData Sync

Firewall and Proxy

Connecting Through a Firewall or Proxy

HTTP Proxies

To connect through the Windows system proxy, you do not need to set any additional connection properties. To connect to other proxies, set ProxyAutoDetect to false.

In addition, to authenticate to an HTTP proxy, set ProxyAuthScheme, ProxyUser, and ProxyPassword, in addition to ProxyServer and ProxyPort.

Other Proxies

Set the following properties:

  • To use a proxy-based firewall, set FirewallType, FirewallServer, and FirewallPort.
  • To tunnel the connection, set FirewallType to TUNNEL.
  • To authenticate, specify FirewallUser and FirewallPassword.
  • To authenticate to a SOCKS proxy, additionally set FirewallType to SOCKS5.

Odoo Connector for CData Sync

Data Model

The Sync App represents Odoo models as relational tables and views. The table definitions are dynamically obtained from the Odoo site you connect to, and the exact ones that will be availble to you will be different depending upon the apps you have installed. The tables listed here are only examples, which may differ from the ones available to you.

Tables

When connecting, the Sync App determines what models you can modify and which are read-only. Models that can be modified are represented as tables, which have support for reading, inserting, updating and deleting data.

Views

Any models that are read-only are represented as views. You can read data from them the same as you would a table, but inserting, updating and deleting are not allowed.

Many2One, One2Many and Many2Many Columns

Within Odoo, in addition to columns with simple values like text and dates, there are also columns that contain multiple values on each row. The Sync App decodes these kinds of values differently, depending upon the type of column the value comes from:

Many2One

Many2One columns are references to a single row within another model. Within the Sync App, Many2One columns are represented as integers, whose value is the id that they refer to in the other model.

For example, the Calendar module inludes a model for events called "calendar_event", which has a column called "opportunity_id" that refers to an opportunity in the "crm_lead" model. When creating or updating a calendar event, you can set the opportunity_id to the id of the lead the meeting is for:

INSERT INTO calendar_event (name, start, stop, opportunity_id) VALUES ('Meet With Potential Customer', '...', '...', 42)

If you were to read this event later, the value of opportunity_id would be the number 42.

Many2Many

Many2Many columns are references to many rows within another model. Within the Sync App, Many2Many columns are represented as text containing a comma-separated list of integers. Each value in that list is the id of a row that is being referenced.

For example, the Calendar module inludes a model for events called "calendar_event", which has a column called "partner_ids" that refers to contacts in the "res_partner" model. When creating or updating a calendar event, you can set the partner_ids to the ids of the people who are attending the meeting:

INSERT INTO calendar_event (name, start, stop, partner_ids) VALUES ('Meet With Potential Customer', '...', '...', '13,57')

If you were to read this event later, the value of partner_ids would be the text "13,57" (or "57,13", since the ids can be in any order).

One2Many

One2Many columns are references to many rows within another model - they are similar to Many2Many columns, except that each row in the referenced model must belong to only one in the main model.

For example, the Calendar module inludes a model for events called "calendar_event", which has a column called "attendee_ids" that refers to the meeting invitations stored in the "event_attendee" model. Unlike partner_ids, where different meetings can share the same partners and different partners can go to the same meeting, each invitation is linked to just one event.

Currently, these columns are read the same was as Many2Many columns (as text containing a comma-separated list of ids), but they cannot be written to.

Odoo Connector for CData Sync

Views

Views are similar to tables in the way that data is represented; however, views are read-only.

Queries can be executed against a view as if it were a normal table.

Odoo Connector for CData Sync Views

Name Description
FieldReferences Retrieves both single-value and multi-value references from a table.

Odoo Connector for CData Sync

FieldReferences

Retrieves both single-value and multi-value references from a table.

Columns

Name Type References Description
ReferenceTable String The name of the table containing the reference field.
ReferenceColumn String The name of column that refers to another field.
TargetTable String The name of the table targetted by the reference.
IsMultiValued Boolean Whether the reference column contains multiple values.

Odoo Connector for CData Sync

Connection String Options

The connection string properties are the various options that can be used to establish a connection. This section provides a complete list of the options you can configure in the connection string for this provider. Click the links for further details.

For more information on establishing a connection, see Establishing a Connection.

Authentication


PropertyDescription
URLThe base URL of the Odoo site you're connecting to. For example, http://my.odoo.com/.
DatabaseThe name of the Odoo database you're connecting to.
OdooEditionThe edition of Odoo being used. Set either Odoo Online or Odoo On-Premise.
UserThe Odoo user account used to authenticate.
APITokenThe API token (or password) used to authenticate the user.
CheckPermissionsWhether to use Odoo user's permissions to determine which tables and views to list.

SSL


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.

Firewall


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.

Proxy


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Logging


PropertyDescription
LogModulesCore modules to be included in the log file.

Schema


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
AllowComputedFieldsBoolean determining whether computed names from Odoo are mapped to columns.
ExpandReferencesBoolean determining if multi-valued Many2Many and One2Many fields are expanded into separate rows.
ShowParameterizedTablesShow tables that require inputs.
UseDisplayNamesBoolean determining if the display names for the columns should be used instead of the API names.

Miscellaneous


PropertyDescription
LanguageThis property specifies the language in which the data should be returned.
MaxRowsLimits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
OtherThese hidden properties are used only in specific use cases.
PagesizeThe maximum number of results to return per page from Odoo.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
Odoo Connector for CData Sync

Authentication

This section provides a complete list of the Authentication properties you can configure in the connection string for this provider.


PropertyDescription
URLThe base URL of the Odoo site you're connecting to. For example, http://my.odoo.com/.
DatabaseThe name of the Odoo database you're connecting to.
OdooEditionThe edition of Odoo being used. Set either Odoo Online or Odoo On-Premise.
UserThe Odoo user account used to authenticate.
APITokenThe API token (or password) used to authenticate the user.
CheckPermissionsWhether to use Odoo user's permissions to determine which tables and views to list.
Odoo Connector for CData Sync

URL

The base URL of the Odoo site you're connecting to. For example, http://my.odoo.com/.

Remarks

The base URL of the Odoo site you're connecting to. For example, http://my.odoo.com/.

Odoo Connector for CData Sync

Database

The name of the Odoo database you're connecting to.

Remarks

When connecting to Odoo online, this value is usually the name of your custom Odoo domain. For example, if you connect to https://contoso.odoo.com, then the Database will be contoso. This property will be interpreted from the URL property.

When connecting to an on-premise instance of Odoo, you can find this value by logging out of Odoo and opening the Manage Databases page from the login screen. There, you can determine the database you need to connect to.

Odoo Connector for CData Sync

OdooEdition

The edition of Odoo being used. Set either Odoo Online or Odoo On-Premise.

Remarks

The edition of Odoo being used. Set either Odoo Online or Odoo On-Premise. When the OdooEdition is set to Odoo Online, the driver will consider the System's culture while processing the float/decimal/double data types for Insert statements.

Odoo Connector for CData Sync

User

The Odoo user account used to authenticate.

Remarks

Together with APIToken, this field is used to authenticate against the Odoo server.

Odoo Connector for CData Sync

APIToken

The API token (or password) used to authenticate the user.

Remarks

When using Odoo 14 and above, this option can be set to either an API token or password. API tokens are recommended over passwords.

Odoo Connector for CData Sync

CheckPermissions

Whether to use Odoo user's permissions to determine which tables and views to list.

Remarks

Each user in Odoo has different permissions to some models - they can modify some, read others, and may not be able to access some at all. When CheckPermissions is true (the default), the model permissions are examined so that modifiable models are classified as tables, read-only models are classified as views, and inaccessible models are not listed.

When CheckPermissions is false, all the models within Odoo are listed as tables and the permissions check is skipped.

Checking model permissions requires an administrator to grant your user read-only access to the "ir.model.access" model because it is not readable to most users by default. If access to that model cannot be granted to the connecting user, then set this option to false.

Odoo Connector for CData Sync

SSL

This section provides a complete list of the SSL properties you can configure in the connection string for this provider.


PropertyDescription
SSLServerCertThe certificate to be accepted from the server when connecting using TLS/SSL.
Odoo Connector for CData Sync

SSLServerCert

The certificate to be accepted from the server when connecting using TLS/SSL.

Remarks

If using a TLS/SSL connection, this property can be used to specify the TLS/SSL certificate to be accepted from the server. Any other certificate that is not trusted by the machine is rejected.

This property can take the following forms:

Description Example
A full PEM Certificate (example shortened for brevity) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
A path to a local file containing the certificate C:\cert.cer
The public key (example shortened for brevity) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
The MD5 Thumbprint (hex values can also be either space or colon separated) ecadbdda5a1529c58a1e9e09828d70e4
The SHA1 Thumbprint (hex values can also be either space or colon separated) 34a929226ae0819f2ec14b4a3d904f801cbb150d

If not specified, any certificate trusted by the machine is accepted.

Use '*' to signify to accept all certificates. Note that this is not recommended due to security concerns.

Odoo Connector for CData Sync

Firewall

This section provides a complete list of the Firewall properties you can configure in the connection string for this provider.


PropertyDescription
FirewallTypeThe protocol used by a proxy-based firewall.
FirewallServerThe name or IP address of a proxy-based firewall.
FirewallPortThe TCP port for a proxy-based firewall.
FirewallUserThe user name to use to authenticate with a proxy-based firewall.
FirewallPasswordA password used to authenticate to a proxy-based firewall.
Odoo Connector for CData Sync

FirewallType

The protocol used by a proxy-based firewall.

Remarks

This property specifies the protocol that the Sync App will use to tunnel traffic through the FirewallServer proxy. Note that by default, the Sync App connects to the system proxy; to disable this behavior and connect to one of the following proxy types, set ProxyAutoDetect to false.

Type Default Port Description
TUNNEL 80 When this is set, the Sync App opens a connection to Odoo and traffic flows back and forth through the proxy.
SOCKS4 1080 When this is set, the Sync App sends data through the SOCKS 4 proxy specified by FirewallServer and FirewallPort and passes the FirewallUser value to the proxy, which determines if the connection request should be granted.
SOCKS5 1080 When this is set, the Sync App sends data through the SOCKS 5 proxy specified by FirewallServer and FirewallPort. If your proxy requires authentication, set FirewallUser and FirewallPassword to credentials the proxy recognizes.

To connect to HTTP proxies, use ProxyServer and ProxyPort. To authenticate to HTTP proxies, use ProxyAuthScheme, ProxyUser, and ProxyPassword.

Odoo Connector for CData Sync

FirewallServer

The name or IP address of a proxy-based firewall.

Remarks

This property specifies the IP address, DNS name, or host name of a proxy allowing traversal of a firewall. The protocol is specified by FirewallType: Use FirewallServer with this property to connect through SOCKS or do tunneling. Use ProxyServer to connect to an HTTP proxy.

Note that the Sync App uses the system proxy by default. To use a different proxy, set ProxyAutoDetect to false.

Odoo Connector for CData Sync

FirewallPort

The TCP port for a proxy-based firewall.

Remarks

This specifies the TCP port for a proxy allowing traversal of a firewall. Use FirewallServer to specify the name or IP address. Specify the protocol with FirewallType.

Odoo Connector for CData Sync

FirewallUser

The user name to use to authenticate with a proxy-based firewall.

Remarks

The FirewallUser and FirewallPassword properties are used to authenticate against the proxy specified in FirewallServer and FirewallPort, following the authentication method specified in FirewallType.

Odoo Connector for CData Sync

FirewallPassword

A password used to authenticate to a proxy-based firewall.

Remarks

This property is passed to the proxy specified by FirewallServer and FirewallPort, following the authentication method specified by FirewallType.

Odoo Connector for CData Sync

Proxy

This section provides a complete list of the Proxy properties you can configure in the connection string for this provider.


PropertyDescription
ProxyAutoDetectThis indicates whether to use the system proxy settings or not.
ProxyServerThe hostname or IP address of a proxy to route HTTP traffic through.
ProxyPortThe TCP port the ProxyServer proxy is running on.
ProxyAuthSchemeThe authentication type to use to authenticate to the ProxyServer proxy.
ProxyUserA user name to be used to authenticate to the ProxyServer proxy.
ProxyPasswordA password to be used to authenticate to the ProxyServer proxy.
ProxySSLTypeThe SSL type to use when connecting to the ProxyServer proxy.
ProxyExceptionsA semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .
Odoo Connector for CData Sync

ProxyAutoDetect

This indicates whether to use the system proxy settings or not.

Remarks

This takes precedence over other proxy settings, so you'll need to set ProxyAutoDetect to FALSE in order use custom proxy settings.

To connect to an HTTP proxy, see ProxyServer. For other proxies, such as SOCKS or tunneling, see FirewallType.

Odoo Connector for CData Sync

ProxyServer

The hostname or IP address of a proxy to route HTTP traffic through.

Remarks

The hostname or IP address of a proxy to route HTTP traffic through. The Sync App can use the HTTP, Windows (NTLM), or Kerberos authentication types to authenticate to an HTTP proxy.

If you need to connect through a SOCKS proxy or tunnel the connection, see FirewallType.

By default, the Sync App uses the system proxy. If you need to use another proxy, set ProxyAutoDetect to false.

Odoo Connector for CData Sync

ProxyPort

The TCP port the ProxyServer proxy is running on.

Remarks

The port the HTTP proxy is running on that you want to redirect HTTP traffic through. Specify the HTTP proxy in ProxyServer. For other proxy types, see FirewallType.

Odoo Connector for CData Sync

ProxyAuthScheme

The authentication type to use to authenticate to the ProxyServer proxy.

Remarks

This value specifies the authentication type to use to authenticate to the HTTP proxy specified by ProxyServer and ProxyPort.

Note that the Sync App will use the system proxy settings by default, without further configuration needed; if you want to connect to another proxy, you will need to set ProxyAutoDetect to false, in addition to ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

The authentication type can be one of the following:

  • BASIC: The Sync App performs HTTP BASIC authentication.
  • DIGEST: The Sync App performs HTTP DIGEST authentication.
  • NEGOTIATE: The Sync App retrieves an NTLM or Kerberos token based on the applicable protocol for authentication.
  • PROPRIETARY: The Sync App does not generate an NTLM or Kerberos token. You must supply this token in the Authorization header of the HTTP request.

If you need to use another authentication type, such as SOCKS 5 authentication, see FirewallType.

Odoo Connector for CData Sync

ProxyUser

A user name to be used to authenticate to the ProxyServer proxy.

Remarks

The ProxyUser and ProxyPassword options are used to connect and authenticate against the HTTP proxy specified in ProxyServer.

You can select one of the available authentication types in ProxyAuthScheme. If you are using HTTP authentication, set this to the user name of a user recognized by the HTTP proxy. If you are using Windows or Kerberos authentication, set this property to a user name in one of the following formats:

user@domain
domain\user

Odoo Connector for CData Sync

ProxyPassword

A password to be used to authenticate to the ProxyServer proxy.

Remarks

This property is used to authenticate to an HTTP proxy server that supports NTLM (Windows), Kerberos, or HTTP authentication. To specify the HTTP proxy, you can set ProxyServer and ProxyPort. To specify the authentication type, set ProxyAuthScheme.

If you are using HTTP authentication, additionally set ProxyUser and ProxyPassword to HTTP proxy.

If you are using NTLM authentication, set ProxyUser and ProxyPassword to your Windows password. You may also need these to complete Kerberos authentication.

For SOCKS 5 authentication or tunneling, see FirewallType.

By default, the Sync App uses the system proxy. If you want to connect to another proxy, set ProxyAutoDetect to false.

Odoo Connector for CData Sync

ProxySSLType

The SSL type to use when connecting to the ProxyServer proxy.

Remarks

This property determines when to use SSL for the connection to an HTTP proxy specified by ProxyServer. This value can be AUTO, ALWAYS, NEVER, or TUNNEL. The applicable values are the following:

AUTODefault setting. If the URL is an HTTPS URL, the Sync App will use the TUNNEL option. If the URL is an HTTP URL, the component will use the NEVER option.
ALWAYSThe connection is always SSL enabled.
NEVERThe connection is not SSL enabled.
TUNNELThe connection is through a tunneling proxy. The proxy server opens a connection to the remote host and traffic flows back and forth through the proxy.

Odoo Connector for CData Sync

ProxyExceptions

A semicolon separated list of destination hostnames or IPs that are exempt from connecting through the ProxyServer .

Remarks

The ProxyServer is used for all addresses, except for addresses defined in this property. Use semicolons to separate entries.

Note that the Sync App uses the system proxy settings by default, without further configuration needed; if you want to explicitly configure proxy exceptions for this connection, you need to set ProxyAutoDetect = false, and configure ProxyServer and ProxyPort. To authenticate, set ProxyAuthScheme and set ProxyUser and ProxyPassword, if needed.

Odoo Connector for CData Sync

Logging

This section provides a complete list of the Logging properties you can configure in the connection string for this provider.


PropertyDescription
LogModulesCore modules to be included in the log file.
Odoo Connector for CData Sync

LogModules

Core modules to be included in the log file.

Remarks

Only the modules specified (separated by ';') will be included in the log file. By default all modules are included.

See the Logging page for an overview.

Odoo Connector for CData Sync

Schema

This section provides a complete list of the Schema properties you can configure in the connection string for this provider.


PropertyDescription
LocationA path to the directory that contains the schema files defining tables, views, and stored procedures.
BrowsableSchemasThis property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
TablesThis property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.
ViewsRestricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.
AllowComputedFieldsBoolean determining whether computed names from Odoo are mapped to columns.
ExpandReferencesBoolean determining if multi-valued Many2Many and One2Many fields are expanded into separate rows.
ShowParameterizedTablesShow tables that require inputs.
UseDisplayNamesBoolean determining if the display names for the columns should be used instead of the API names.
Odoo Connector for CData Sync

Location

A path to the directory that contains the schema files defining tables, views, and stored procedures.

Remarks

The path to a directory which contains the schema files for the Sync App (.rsd files for tables and views, .rsb files for stored procedures). The folder location can be a relative path from the location of the executable. The Location property is only needed if you want to customize definitions (for example, change a column name, ignore a column, and so on) or extend the data model with new tables, views, or stored procedures.

If left unspecified, the default location is "%APPDATA%\\CData\\Odoo Data Provider\\Schema" with %APPDATA% being set to the user's configuration directory:

Platform %APPDATA%
Windows The value of the APPDATA environment variable
Linux ~/.config

Odoo Connector for CData Sync

BrowsableSchemas

This property restricts the schemas reported to a subset of the available schemas. For example, BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Remarks

Listing the schemas from databases can be expensive. Providing a list of schemas in the connection string improves the performance.

Odoo Connector for CData Sync

Tables

This property restricts the tables reported to a subset of the available tables. For example, Tables=TableA,TableB,TableC.

Remarks

Listing the tables from some databases can be expensive. Providing a list of tables in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the tables you want in a comma-separated list. Each table should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Odoo Connector for CData Sync

Views

Restricts the views reported to a subset of the available tables. For example, Views=ViewA,ViewB,ViewC.

Remarks

Listing the views from some databases can be expensive. Providing a list of views in the connection string improves the performance of the Sync App.

This property can also be used as an alternative to automatically listing views if you already know which ones you want to work with and there would otherwise be too many to work with.

Specify the views you want in a comma-separated list. Each view should be a valid SQL identifier with any special characters escaped using square brackets, double-quotes or backticks. For example, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Note that when connecting to a data source with multiple schemas or catalogs, you will need to provide the fully qualified name of the table in this property, as in the last example here, to avoid ambiguity between tables that exist in multiple catalogs or schemas.

Odoo Connector for CData Sync

AllowComputedFields

Boolean determining whether computed names from Odoo are mapped to columns.

Remarks

Internally, Odoo stores some fields directly in its database and computes other fields dynamically when you request them. While stored fields are usually fast to retrieve, computed fields can potentially be much slower since Odoo has to do additional work on each row.

By default, this property is false and computed fields are not available. You can set this property to true if you need to access a computed field, although this will make queries (including star queries) on many tables take longer to run.

Odoo Connector for CData Sync

ExpandReferences

Boolean determining if multi-valued Many2Many and One2Many fields are expanded into separate rows.

Remarks

By default Many2Many and One2Many fields are collapsed into single values separated by commas. For example, a record in calendar_event IDs will generate a result like this if partners 13 and 57 are attending.

SELECT id, name,                           partner_ids, x_custom_ids FROM calendar_event
--      1  'Meet With Potential Customer'  '13,57'      '1,2'

With this option enabled, the Sync App will expand each combination of multi-valued field values across multiple rows. This means that row data will be duplicated but makes it simpler to JOIN between tables that are linked by multi-valued references.

In addition, the Sync App will use a separate primary key called id:multi since id) not unique when rows are duplciated. This primary key is generated client-side and its use should be avoided in filters, since it depends upon the exact rows returned by any filters evaluated by Odoo.

SELECT "id:multi", id, name,                          partner_ids, x_custom_ids FROM calendar_event
--      1:1        1  'Meet With Potential Customer'  13           1
--      1:2        1  'Meet With Potential Customer'  57           1
--      1:3        1  'Meet With Potential Customer'  13           2
--      1:4        1  'Meet With Potential Customer'  57           2

Note that this option does not affect how INSERTs are processed. If you want to insert a record containing a multi-valued field you must always insert using a comma-separated value.

Odoo Connector for CData Sync

ShowParameterizedTables

Show tables that require inputs.

Remarks

When this property is set to true, all the tables or views that require inputs to fetch data are displayed.

When this property is set to false, those tables and views are hidden.

The following is the complete list of tables that are shown/hidden based on the value of this property:

  • calendar_alarm_manager
  • forum_post
  • ir_actions_act__window
  • website_seo_metadata
  • publisher_warranty_contract
  • board_board
  • hr_leave_report_calendar
  • report_stock_quantity
  • res_users_apikeys_show
  • account_aged_payable
  • account_aged_receivable
  • account_multicurrency_revaluation

Odoo Connector for CData Sync

UseDisplayNames

Boolean determining if the display names for the columns should be used instead of the API names.

Remarks

Display names may be changed in the future. Set this to false if you would like to ensure column names are always constant.

Odoo Connector for CData Sync

Miscellaneous

This section provides a complete list of the Miscellaneous properties you can configure in the connection string for this provider.


PropertyDescription
LanguageThis property specifies the language in which the data should be returned.
MaxRowsLimits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.
OtherThese hidden properties are used only in specific use cases.
PagesizeThe maximum number of results to return per page from Odoo.
PseudoColumnsThis property indicates whether or not to include pseudo columns as columns to the table.
TimeoutThe value in seconds until the timeout error is thrown, canceling the operation.
UserDefinedViewsA filepath pointing to the JSON configuration file containing your custom views.
Odoo Connector for CData Sync

Language

This property specifies the language in which the data should be returned.

Remarks

This property can take one of the following values:

en_us (default)English (US)
es_MXSpanish (MX) / Español (MX)
es_MXSpanish (MX) / Español (MX)
sq_ALAlbanian / Shqip
am_ETAmharic / አምሃርኛ
ar_SYArabic (Syria) / الْعَرَبيّة
ar_001Arabic / الْعَرَبيّة
az_AZAzerbaijani / Azərbaycanca
eu_ESBasque / Euskara
bn_INBengali / বাংলা
bs_BABosnian / bosanski jezik
bg_BGBulgarian / български език
my_MMBurmese / ဗမာစာ
ca_ESCatalan / Català
zh_HKChinese (HK)
zh_CNChinese (Simplified) / 简体中文
zh_TWChinese (Traditional) / 繁體中文
hr_HRCroatian / hrvatski jezik
cs_CZCzech / Čeština
da_DKDanish / Dansk
nl_BEDutch (BE) / Nederlands (BE)
nl_NLDutch / Nederlands
en_AUEnglish (AU)
en_CAEnglish (CA)
en_INEnglish (IN)
en_NZEnglish (NZ)
en_GBEnglish (UK)
et_EEEstonian / Eesti keel
fi_FIFinnish / Suomi
fr_BEFrench (BE) / Français (BE)
fr_CAFrench (CA) / Français (CA)
fr_CHFrench (CH) / Français (CH)
fr_FRFrench / Français
gl_ESGalician / Galego
ka_GEGeorgian / ქართული ენა
de_CHGerman (CH) / Deutsch (CH)
de_DEGerman / Deutsch
el_GRGreek / Ελληνικά
gu_INGujarati / ગુજરાતી
he_ILHebrew / עִבְרִי
hi_INHindi / हिंदी
hu_HUHungarian / Magyar
id_IDIndonesian / Bahasa Indonesia
it_ITItalian / Italiano
ja_JPJapanese / 日本語
kab_DZKabyle / Taqbaylit
km_KHKhmer / ភាសាខ្មែរ
ko_KPKorean (KP) / 한국어 (KP)
ko_KRKorean (KR) / 한국어 (KR)
lo_LALao / ພາສາລາວ
lv_LVLatvian / latviešu valoda
lt_LTLithuanian / Lietuvių kalba
lb_LULuxembourgish
mk_MKMacedonian / македонски јазик
ms_MYMalay / Bahasa Melayu
ml_INMalayalam / മലയാളം
mn_MNMongolian / монгол
nb_NONorwegian Bokmål / Norsk bokmål
fa_IRPersian / فارسی
pl_PLPolish / Język polski
pt_AOPortuguese (AO) / Português (AO)
pt_BRPortuguese (BR) / Português (BR)
pt_PTPortuguese / Português
ro_RORomanian / română
ru_RURussian / русский язык
sr_RSSerbian (Cyrillic) / српски
sr@latinSerbian (Latin) / srpski
sk_SKSlovak / Slovenský jazyk
sl_SISlovenian / slovenščina
es_ARSpanish (AR) / Español (AR)
es_BOSpanish (BO) / Español (BO)
es_CLSpanish (CL) / Español (CL)
es_COSpanish (CO) / Español (CO)
es_CRSpanish (CR) / Español (CR)
es_DOSpanish (DO) / Español (DO)
es_ECSpanish (EC) / Español (EC)
es_GTSpanish (GT) / Español (GT)
es_419Spanish (Latin America) / Español (América Latina)
es_PASpanish (PA) / Español (PA)
es_PESpanish (PE) / Español (PE)
es_PYSpanish (PY) / Español (PY)
es_UYSpanish (UY) / Español (UY)
es_VESpanish (VE) / Español (VE)
es_ESSpanish / Español
sv_SESwedish / Svenska
tl_PHTagalog / Filipino
te_INTelugu / తెలుగు
th_THThai / ภาษาไทย
tr_TRTurkish / Türkçe
uk_UAUkrainian / українська
vi_VNVietnamese / Tiếng Việt

Odoo Connector for CData Sync

MaxRows

Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.

Remarks

Limits the number of rows returned when no aggregation or GROUP BY is used in the query. This takes precedence over LIMIT clauses.

Odoo Connector for CData Sync

Other

These hidden properties are used only in specific use cases.

Remarks

The properties listed below are available for specific use cases. Normal driver use cases and functionality should not require these properties.

Specify multiple properties in a semicolon-separated list.

Integration and Formatting

DefaultColumnSizeSets the default length of string fields when the data source does not provide column length in the metadata. The default value is 2000.
ConvertDateTimeToGMTDetermines whether to convert date-time values to GMT, instead of the local time of the machine.
RecordToFile=filenameRecords the underlying socket data transfer to the specified file.

Odoo Connector for CData Sync

Pagesize

The maximum number of results to return per page from Odoo.

Remarks

The Pagesize property affects the maximum number of results to return per page from Odoo. Setting a higher value may result in better performance at the cost of additional memory allocated per page consumed.

Odoo Connector for CData Sync

PseudoColumns

This property indicates whether or not to include pseudo columns as columns to the table.

Remarks

This setting is particularly helpful in Entity Framework, which does not allow you to set a value for a pseudo column unless it is a table column. The value of this connection setting is of the format "Table1=Column1, Table1=Column2, Table2=Column3". You can use the "*" character to include all tables and all columns; for example, "*=*".

Odoo Connector for CData Sync

Timeout

The value in seconds until the timeout error is thrown, canceling the operation.

Remarks

If Timeout = 0, operations do not time out. The operations run until they complete successfully or until they encounter an error condition.

If Timeout expires and the operation is not yet complete, the Sync App throws an exception.

Odoo Connector for CData Sync

UserDefinedViews

A filepath pointing to the JSON configuration file containing your custom views.

Remarks

User Defined Views are defined in a JSON-formatted configuration file called UserDefinedViews.json. The Sync App automatically detects the views specified in this file.

You can also have multiple view definitions and control them using the UserDefinedViews connection property. When you use this property, only the specified views are seen by the Sync App.

This User Defined View configuration file is formatted as follows:

  • Each root element defines the name of a view.
  • Each root element contains a child element, called query, which contains the custom SQL query for the view.

For example:

{
	"MyView": {
		"query": "SELECT * FROM res_users WHERE MyColumn = 'value'"
	},
	"MyView2": {
		"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
	}
}
Use the UserDefinedViews connection property to specify the location of your JSON configuration file. For example:
"UserDefinedViews", C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json
Note that the specified path is not embedded in quotation marks.

Copyright (c) 2024 CData Software, Inc. - All rights reserved.
Build 23.0.8839