Zum Inhalt springen

Odoo-Verbindungsdetails

Einführung

Connector-Version

Diese Dokumentation basiert auf Version 21.0.8662 des Connectors.

Wichtig

Wir empfehlen die Verwendung des Odoo v2 Connectors, um eine Verbindung zu Odoo herzustellen, da es zusätzliche Konfigurationseigenschaften ermöglicht.

Erste Schritte

Odoo Versionsunterstützung

Der Connector kann eine Verbindung zu Odoo Version 8 und höher herstellen. Der Connector nutzt die XML-RPC-Schnittstelle von Odoo, die standardmäßig sowohl in der On-Premise-Version als auch bei vielen Hosting-Diensten wie odoo.sh verfügbar ist.

Herstellen einer Verbindung

Mit Odoo verbinden

Zum Verbinden setzen Sie die URL zu einer gültigen Odoo Site, User Und APIToken zu den Verbindungsdetails des Benutzers, mit dem Sie sich verbinden, und Database zur Odoo-Datenbank. Wenn Sie keine API Token verwenden (diese werden nur in Odoo 14 und höher unterstützt), können Sie das Passwort auch im angeben APIToken Feld.

Zugriffsrechte

Damit der Connector bestimmen kann, auf welche Modelle Sie in Odoo zugreifen können, muss der Benutzer, mit dem Sie sich verbinden, über Leseberechtigungen für „ir.model.access“ (ein internes Odoo Modell, das die Zugriffsrechte regelt) verfügen. Normalerweise ist dies Administratoren vorbehalten, kann aber jedem Benutzer gewährt werden, indem eine Servicegruppe erstellt wird:

  1. Öffnen Sie als Administrator die Odoo Einstellungsseite und aktivieren Sie den „Entwickler “. Wenn dieser nicht verfügbar ist, müssen Sie sich möglicherweise stattdessen als Superuser anmelden.
  2. Öffnen Sie die Seite „Gruppen“ (unter dem Dropdown-Menü „Benutzer“) und erstellen Sie eine neue Gruppe
  3. Stellen Sie die Anwendung auf „Administration“ und den Namen auf „Service Access“ ein.
  4. Fügen Sie alle Benutzer hinzu, die Zugriff auf den Dienst benötigen, auf der Tab „Benutzer“
  5. Fügen Sie auf der Tab Zugriffsrechte einen Eintrag für das Objekt „ir.model.access“ hinzu (es kann „Modellzugriff“ heißen), aktivieren Sie Lesezugriff und geben Sie ihm den Namen „Modelle prüfen“.
  6. Gruppe speichern

Wenn diese Änderung nicht möglich ist, sollten Sie den Wert setzen CheckPermissions Option auf „False“. Dadurch werden alle Modelle in Odoo als Tabellen aufgelistet, unabhängig davon, welche Berechtigungen Ihr Benutzer tatsächlich für diese Modelle hat.

Wichtige Hinweise

Konfigurationsdateien und ihre Pfade

  • Alle Verweise auf das Hinzufügen von Konfigurationsdateien und deren Pfaden beziehen sich auf Dateien und Speicherorte auf dem Jitterbit-Agenten, auf dem der Connector installiert ist. Diese Pfade sind je nach Agent und Operationssystem entsprechend anzupassen. Wenn mehrere Agenten in einer Agentengruppe verwendet werden, werden auf jedem Agenten identische Dateien benötigt.

Erweiterte Funktionen

In diesem Abschnitt wird eine Auswahl erweiterter Funktionen des Odoo Connectors beschrieben.

Benutzerdefinierte Ansichten

Der Connector ermöglicht Ihnen die Definition virtueller Tabellen, sogenannter benutzerdefinierter Ansichten, deren Inhalt durch eine vorkonfigurierte Abfrage bestimmt wird. Diese Ansichten sind nützlich, wenn Sie die an die Treiber gesendeten Abfragen nicht direkt steuern können. Siehe Benutzerdefinierte Ansichten für einen Überblick über das Erstellen und Konfigurieren benutzerdefinierter Ansichten.

SSL-Konfiguration

Verwenden Sie SSL-Konfiguration, um anzupassen, wie der Connector TLS/SSL-Zertifikatsverhandlungen handhabt. Sie können aus verschiedenen Zertifikatsformaten wählen; siehe SSLServerCert-Eigenschaft unter „Verbindungszeichenfolgenoptionen“ für weitere Informationen.

Proxy

So konfigurieren Sie den Connector mit privaten Agent-Proxy-Einstellungen, wählen Sie die Use Proxy Settings Kontrollkästchen auf dem Verbindungskonfigurationsbildschirm.

Benutzerdefinierte Ansichten

Mit dem Odoo-Connector können Sie eine virtuelle Tabelle definieren, deren Inhalt durch eine vorkonfigurierte Abfrage bestimmt wird. Diese werden als benutzerdefinierte Ansichten bezeichnet und sind in Situationen nützlich, in denen Sie die an den Treiber gesendete Abfrage nicht direkt steuern können, z. B. wenn Sie den Treiber von Jitterbit verwenden. Die benutzerdefinierten Ansichten können verwendet werden, um Prädikate zu definieren, die immer angewendet werden. Wenn Sie in der Abfrage an die Ansicht zusätzliche Prädikate angeben, werden diese mit der bereits als Teil der Ansicht definierten Abfrage kombiniert.

Es gibt zwei Möglichkeiten, benutzerdefinierte Ansichten zu erstellen:

  • Erstellen Sie eine Konfigurationsdatei im JSON-Format, die die gewünschten Ansichten definiert.
  • DDL-Anweisungen.

Definieren von Ansichten mithilfe einer Konfigurationsdatei

Benutzerdefinierte Ansichten werden in einer JSON-formatierten Konfigurationsdatei namens UserDefinedViews.json. Der Connector erkennt die in dieser Datei angegebenen Ansichten automatisch.

Sie können auch mehrere Ansichtsdefinitionen haben und diese mit steuern UserDefinedViews Verbindungseigenschaft. Wenn Sie diese Eigenschaft verwenden, werden vom Connector nur die angegebenen Ansichten angezeigt.

Diese Konfigurationsdatei für benutzerdefinierte Ansichten ist wie folgt formatiert:

  • Jedes Stammelement definiert den Namen einer Ansicht.
  • Jedes Stammelement enthält ein untergeordnetes Element namens query, das die benutzerdefinierte SQL- Abfrage für die Ansicht enthält.

Zum Beispiel:

{
    "MyView": {
        "query": "SELECT * FROM res_users WHERE MyColumn = 'value'"
    },
    "MyView2": {
        "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
    }
}

Verwenden Sie UserDefinedViews Verbindungseigenschaft zur Angabe des Speicherorts Ihrer JSON-Konfigurationsdatei. Beispiel:

"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"

Schema für benutzerdefinierte Ansichten

Benutzerdefinierte Ansichten werden im angezeigt UserViews Schema standardmäßig. Dies geschieht, um zu vermeiden, dass der Name der Ansicht mit einer tatsächlichen Entität im Datenmodell kollidiert. Sie können den Namen des für UserViews verwendeten Schema ändern, indem Sie UserViewsSchemaName Eigentum.

Arbeiten mit benutzerdefinierten Ansichten

Beispielsweise eine SQL-Anweisung mit einer benutzerdefinierten Ansicht namens UserViews.RCustomers listet nur Kunden in Raleigh auf:

SELECT * FROM Customers WHERE City = 'Raleigh';

Ein Beispiel für eine Abfrage an den Treiber:

SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';

Daraus ergibt sich die effektive Abfrage an die Quelle:

SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';

Dies ist ein sehr einfaches Beispiel für eine Abfrage an eine benutzerdefinierte Ansicht, die tatsächlich eine Kombination aus der Abfrage und der Ansichtsdefinition ist. Es ist möglich, diese Abfragen in viel komplexeren Mustern zusammenzustellen. Alle SQL-Operationen sind in beiden Abfragen zulässig und werden bei Bedarf kombiniert.

SSL-Konfiguration

Anpassen der SSL-Konfiguration

Standardmäßig versucht der Connector, SSL/TLS auszuhandeln, indem er das Zertifikat des Servers mit dem vertrauenswürdigen Zertifikatspeicher des Systems vergleicht.

Um ein anderes Zertifikat anzugeben, siehe SSLServerCert Eigenschaft für die verfügbaren Formate, um dies zu tun.

Datenmodell

Der Connector stellt Odoo Modelle als relationale Tabellen und Ansichten dar. Die Tabellendefinitionen werden dynamisch von der Odoo-Site abgerufen, mit der Sie sich verbinden, und die genauen Tabellen, die Ihnen zur Verfügung stehen, unterscheiden sich je nach den von Ihnen installierten Apps. Die hier aufgeführten Tabellen sind nur Beispiele und können von den Tabellen abweichen, die Ihnen zur Verfügung stehen.

Tabellen

Beim Herstellen einer Verbindung bestimmt der Connector, welche Modelle Sie ändern können und welche schreibgeschützt sind. Modelle, die geändert werden können, werden als Tabellen dargestellt, die das Lesen, Einfügen, Aktualisieren und Löschen von Daten unterstützen.

Ansichten

Alle schreibgeschützten Modelle werden als Ansichten dargestellt. Sie können Daten aus ihnen wie aus einer Tabelle lesen, aber Einfügen, Aktualisieren und Löschen sind nicht zulässig.

Many2One-, One2Many- und Many2Many-Spalten

In Odoo gibt es neben Spalten mit einfachen Werten wie Text und Datum auch Spalten, die in jeder Zeile mehrere Werte enthalten. Der Connector dekodiert diese Werte unterschiedlich, je nachdem, aus welcher Spaltenart der Wert stammt:

Viele2Eins

Many2One-Spalten sind Verweise auf eine einzelne Zeile innerhalb eines anderen Modells. Innerhalb des Connectors werden Many2One-Spalten als Ganzzahlen dargestellt, deren Wert die ID ist, auf die sie im anderen Modell verweisen.

Beispielsweise enthält das Kalendermodul ein Modell für Ereignisse namens „calendar_event“, das eine Spalte namens „opportunity_id“ hat, die auf eine Chance im Modell „crm_lead“ verweist. Wenn Sie ein Kalenderereignis erstellen oder aktualisieren, können Sie die opportunity_id auf die ID des Leads setzen, für den das Meeting bestimmt ist:

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

Wenn Sie dieses Ereignis später lesen würden, wäre der Wert von opportunity_id die Zahl 42.

Viele2Viele

Many2Many-Spalten sind Verweise auf viele Zeilen innerhalb eines anderen Modells. Innerhalb des Connectors werden Many2Many-Spalten als Text dargestellt, der eine durch Kommas getrennte Liste von Ganzzahlen enthält. Jeder Wert in dieser Liste ist die ID einer Zeile, auf die verwiesen wird.

Beispielsweise enthält das Kalendermodul ein Modell für Ereignisse namens „calendar_event“, das eine Spalte namens „partner_ids“ hat, die auf Kontakte im Modell „res_partner“ verweist. Wenn Sie ein Kalenderereignis erstellen oder aktualisieren, können Sie die Partner-IDs auf die IDs der Personen setzen, die an der Besprechung teilnehmen:

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

Wenn Sie dieses Ereignis später lesen würden, wäre der Wert von partner_ids der Text „13,57“ (oder „57,13“, da die IDs in beliebiger Reihenfolge stehen können).

Eins zu Viele

One2Many-Spalten sind Verweise auf viele Zeilen innerhalb eines anderen Modells - sie ähneln Many2Many-Spalten, außer dass jede Zeile im referenzierten Modell nur zu einer Zeile im Hauptmodell gehören darf.

Beispielsweise enthält das Kalendermodul ein Modell für Ereignisse namens „calendar_event“, das eine Spalte namens „attendee_ids“ hat, die auf die im Modell „event_attendee“ gespeicherten Besprechungseinladungen verweist. Im Gegensatz zu partner_ids, wo verschiedene Besprechungen dieselben Partner haben und verschiedene Partner an derselben Besprechung teilnehmen können, ist jede Einladung nur mit einer Veranstaltung verknüpft.

Derzeit werden diese Spalten genauso gelesen wie Many2Many-Spalten (als Text, der eine durch Kommas getrennte Liste von IDs enthält), aber es kann nicht in sie geschrieben werden.

Ansichten

Ansichten bestehen aus Spalten und Pseudospalten. Ansichten ähneln Tabellen in der Art und Weise, wie Daten dargestellt werden; Ansichten unterstützen jedoch keine Aktualisierungen. Entitäten, die als Ansichten dargestellt werden, sind normalerweise schreibgeschützte Entitäten. Oft ist eine gespeicherte Prozedur verfügbar, um die Daten zu aktualisieren, wenn eine solche Funktionalität auf die Datenquelle anwendbar ist.

Abfragen können für eine Ansicht ausgeführt werden, als wäre sie eine normale Tabelle, und die zurückgegebenen Daten sind in dieser Hinsicht ähnlich. Um mehr über Tabellen und gespeicherte Prozeduren zu erfahren, navigieren Sie bitte zu den entsprechenden Einträgen in diesem Hilfedokument.

Odoo Connector-Ansichten

Name Beschreibung
FieldReferences Ruft sowohl einwertige als auch mehrwertige Referenzen aus einer Tabelle ab.

Feldreferenzen

Ruft sowohl Einzelwert- als auch Mehrwert-Referenzen aus einer Tabelle ab.

Spalten
Name Typ Referenzen Beschreibung
ReferenceTable String Der Name der Tabelle, die das Referenzfeld enthält.
ReferenceColumn String Der Name der Spalte, die auf ein anderes Feld verweist.
TargetTable String Der Name der Tabelle, auf die die Referenz abzielt.
IsMultiValued Boolean Ob die Referenzspalte mehrere Werte enthält.

Gespeicherte Prozeduren

Gespeicherte Prozeduren stehen zur Ergänzung der im Datenmodell verfügbaren Daten zur Verfügung. Es kann erforderlich sein, die in einer Ansicht verfügbaren Daten mithilfe einer gespeicherten Prozedur zu aktualisieren, da die Daten keine direkten, tabellenartigen, bidirektionalen Aktualisierungen ermöglichen. In diesen Situationen erfolgt der Abruf der Daten mithilfe der entsprechenden Ansicht oder Tabelle, während die Aktualisierung durch Aufruf einer gespeicherten Prozedur erfolgt. Gespeicherte Prozeduren verwenden eine Liste von Parametern und geben einen Datensatz zurück, der die Sammlung von Tupeln enthält, die die Antwort bilden.

Gespeicherte Prozeduren im Odoo Connector

Name Beschreibung
CallProcedure Ruft einen serverseitigen RPC innerhalb von Odoo auf.

Anrufverfahren

Ruft einen serverseitigen RPC innerhalb von Odoo auf.

Verfahrensspezifische Informationen

Odoo stellt seine RPCs über die externe API bereit. Diese API verwendet eine XML-RPC-Methode namens „execute_kw“, um Odoo-Prozeduren für bestimmte Module aufzurufen. Intern sieht die Methode folgendermaßen aus:

execute_kw(database, user_id, password, model, operation, arguments, keyword_args)

Der Connector stellt die Verbindungsinformationen automatisch bereit, sodass die einzigen für CallProcedure erforderlichen Parameter das Modell, die Operation, eine Liste von Argumenten und eine Zuordnung von Schlüsselwortargumenten sind. Die Argumente und Schlüsselwortargumente werden als JSON-Array bzw. -Objekt bereitgestellt. Der Connector nimmt das Ergebnis des RPC und konvertiert es für die Prozedurausgabe zurück in JSON.

Sie können beispielsweise die Methode „read“ für das Modell „hr.employee“ aufrufen, um Informationen zu bestimmten Mitarbeitern zu lesen. In diesem Fall würden Sie den Namen und die Abteilung für die Mitarbeiter mit den IDs 2 und 4 abrufen:

EXECUTE CallProcedure
  Model = 'hr.employee',
  Operation = 'read',
  -- The read RPC takes one argument, which is the list of IDs
  Arguments = '[[4, 2]]',
KeywordArgs = '{"fields": ["department_id", "name"]}'

Wenn Sie diese Prozedur für die Odoo Beispieldaten aufrufen, wird dieses JSON-Ergebnis zurückgegeben:

[
  {"department_id":`[4, „Forschung und Entwicklung“], `"id": 4, "name": "Sharlene Rhodes"},
  {"department_id":`[4, „Forschung und Entwicklung“], `"id": 2, "name": "Ronnie Hart"}
]
Eingang
Name Typ Beschreibung
Model String Das Modell, auf dem die Prozedur ausgeführt werden soll.
Operation String Die auszuführende Prozedur.
Arguments String Die Liste der an RPC zu übergebenden Argumente, formatiert als JSON-Liste
KeywordArgs String Die an den RPC zu übergebenden Schlüsselwortargumente, formatiert als JSON-Objekt
Ergebnissatzspalten
Name Typ Beschreibung
JSON String Die Ausgabe des RPC wurde in JSON konvertiert.

Systemtabellen

Sie können die in diesem Abschnitt beschriebenen Systemtabellen Abfrage, um auf Schema, Informationen zur Datenquellenfunktionalität und Statistiken zu Operation Charge.

Schematabellen

Die folgenden Tabellen geben Datenbankmetadaten für Odoo zurück:

Datenquellentabellen

Die folgenden Tabellen enthalten Informationen dazu, wie eine Verbindung zur Datenquelle hergestellt und diese Abfrage wird:

  • sys_connection_props: Gibt Informationen zu den verfügbaren Verbindungseigenschaften zurück.
  • sys_sqlinfo: Beschreibt die SELECT-Abfragen, die der Connector an die Datenquelle auslagern kann.

Abfrageinformationstabellen

Die folgende Tabelle gibt Abfrage für Datenänderungsabfragen zurück:

  • Systemidentität: Gibt Informationen zu Charge oder einzelnen Updates zurück.

Sys_catalogs

Listet die verfügbaren Datenbanken auf.

Die folgende Abfrage ruft alle durch die Verbindungszeichenfolge ermittelten Datenbanken ab:

SELECT * FROM sys_catalogs
Spalten
Name Typ Beschreibung
CatalogName String Der Datenbankname.

Sys_schemas

Listet die verfügbaren Schemas auf.

Die folgende Abfrage ruft alle verfügbaren Schemata ab:

SELECT * FROM sys_schemas
Spalten
Name Typ Beschreibung
CatalogName String Der Datenbankname.
SchemaName String Der Schema.

Sys_tables

Listet die verfügbaren Tabellen auf.

Die folgende Abfrage ruft die verfügbaren Tabellen und Ansichten ab:

SELECT * FROM sys_tables
Spalten
Name Typ Beschreibung
CatalogName String Die Datenbank, die die Tabelle oder Ansicht enthält.
SchemaName String Das Schema, das die Tabelle oder Ansicht enthält.
TableName String Der Name der Tabelle oder Ansicht.
TableType String Der Tabellentyp (Tabelle oder Ansicht).
Description String Eine Beschreibung der Tabelle oder Ansicht.
IsUpdateable Boolean Ob die Tabelle aktualisiert werden kann.

Sys_tablecolumns

Beschreibt die Spalten der verfügbaren Tabellen und Ansichten.

Die folgende Abfrage gibt die Spalten und Datentypen für die Tabelle „res_users“ zurück:

SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='res_users'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die die Tabelle oder Ansicht enthält.
SchemaName String Das Schema, das die Tabelle oder Ansicht enthält.
TableName String Der Name der Tabelle oder Ansicht, die die Spalte enthält.
ColumnName String Der Spaltenname.
DataTypeName String Der Name des Datentyps.
DataType Int32 Eine Ganzzahl, die den Datentyp angibt. Dieser Wert wird zur Laufzeit basierend auf der Umfeld bestimmt.
Length Int32 Die Speichergröße der Spalte.
DisplaySize Int32 Die normale Maximalbreite der angegebenen Spalte in Zeichen.
NumericPrecision Int32 Die maximale Anzahl von Ziffern in numerischen Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten.
NumericScale Int32 Die Spaltenskala oder Anzahl der Ziffern rechts vom Dezimalpunkt.
IsNullable Boolean Ob die Spalte Null enthalten kann.
Description String Eine kurze Beschreibung der Spalte.
Ordinal Int32 Die Sequenznummer der Spalte.
IsAutoIncrement String Ob der Spaltenwert in festen Schritten zugewiesen wird.
IsGeneratedColumn String Ob die Spalte generiert wird.
IsHidden Boolean Ob die Spalte ausgeblendet ist.
IsArray Boolean Ob die Spalte ein Array ist.

Sys_procedures

Listet die verfügbaren gespeicherten Prozeduren auf.

Die folgende Abfrage ruft die verfügbaren gespeicherten Prozeduren ab:

SELECT * FROM sys_procedures
Spalten
Name Typ Beschreibung
CatalogName String Die Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Das Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur.
Description String Eine Beschreibung der gespeicherten Prozedur.
ProcedureType String Der Typ der Prozedur, z. B. PROZEDUR oder FUNKTION.

Sys_procedureparameters

Beschreibt Parameter gespeicherter Prozeduren.

Die folgende Abfrage gibt Informationen zu allen Eingabeparametern für die gespeicherte Prozedur CallProcedure zurück:

SELECT * FROM sys_procedureparameters WHERE ProcedureName='CallProcedure' AND Direction=1 OR Direction=2
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die die gespeicherte Prozedur enthält.
SchemaName String Der Name des Schema, das die gespeicherte Prozedur enthält.
ProcedureName String Der Name der gespeicherten Prozedur, die den Parameter enthält.
ColumnName String Der Name des gespeicherten Prozedurparameters.
Direction Int32 Eine Ganzzahl, die dem Typ des Parameters entspricht: Eingabe (1), Eingabe/Ausgabe (2) oder Ausgabe (4). Parameter vom Typ Eingabe/Ausgabe können sowohl Eingabe- als auch Ausgabeparameter sein.
DataTypeName String Der Name des Datentyps.
DataType Int32 Eine Ganzzahl, die den Datentyp angibt. Dieser Wert wird zur Laufzeit basierend auf der Umfeld bestimmt.
Length Int32 Die Anzahl der für Zeichendaten zulässigen Zeichen. Die Anzahl der für numerische Daten zulässigen Ziffern.
NumericPrecision Int32 Die maximale Genauigkeit für numerische Daten. Die Spaltenlänge in Zeichen für Zeichen- und Datums-/Uhrzeitdaten.
NumericScale Int32 Die Anzahl der Ziffern rechts vom Dezimalkomma in numerischen Daten.
IsNullable Boolean Ob der Parameter Null enthalten kann.
IsRequired Boolean Ob der Parameter zur Ausführung der Prozedur erforderlich ist.
IsArray Boolean Ob der Parameter ein Array ist.
Description String Die Beschreibung des Parameters.
Ordinal Int32 Der Index des Parameters.

Sys_keycolumns

Beschreibt die Primär- und Fremdschlüssel.

Die folgende Abfrage ruft den Primärschlüssel für die Tabelle „res_users“ ab:

SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='res_users'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Schlüssel enthält.
SchemaName String Der Name des Schema, das den Schlüssel enthält.
TableName String Der Name der Tabelle, die den Schlüssel enthält.
ColumnName String Der Name der Schlüsselspalte.
IsKey Boolean Ob die Spalte ein Primärschlüssel in der Tabelle ist, auf die im Feld „TableName“ verwiesen wird.
IsForeignKey Boolean Ob die Spalte ein Fremdschlüssel ist, auf den im Feld TableName verwiesen wird.
PrimaryKeyName String Der Name des Primärschlüssels.
ForeignKeyName String Der Name des Fremdschlüssels.
ReferencedCatalogName String Die Datenbank, die den Primärschlüssel enthält.
ReferencedSchemaName String Das Schema, das den Primärschlüssel enthält.
ReferencedTableName String Die Tabelle, die den Primärschlüssel enthält.
ReferencedColumnName String Der Spaltenname des Primärschlüssels.

Sys_foreignkeys

Beschreibt die Fremdschlüssel.

Die folgende Abfrage ruft alle Fremdschlüssel ab, die auf andere Tabellen verweisen:

SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Schlüssel enthält.
SchemaName String Der Name des Schema, das den Schlüssel enthält.
TableName String Der Name der Tabelle, die den Schlüssel enthält.
ColumnName String Der Name der Schlüsselspalte.
PrimaryKeyName String Der Name des Primärschlüssels.
ForeignKeyName String Der Name des Fremdschlüssels.
ReferencedCatalogName String Die Datenbank, die den Primärschlüssel enthält.
ReferencedSchemaName String Das Schema, das den Primärschlüssel enthält.
ReferencedTableName String Die Tabelle, die den Primärschlüssel enthält.
ReferencedColumnName String Der Spaltenname des Primärschlüssels.
ForeignKeyType String Gibt an, ob der Fremdschlüssel ein Importschlüssel (zeigt auf andere Tabellen) oder ein Exportschlüssel (referenziert von anderen Tabellen) ist.

Sys_indexes

Beschreibt die verfügbaren Indizes. Durch das Filtern nach Indizes können Sie selektivere Abfragen mit schnelleren Abfrage schreiben.

Die folgende Abfrage ruft alle Indizes ab, die keine Primärschlüssel sind:

SELECT * FROM sys_indexes WHERE IsPrimary='false'
Spalten
Name Typ Beschreibung
CatalogName String Der Name der Datenbank, die den Index enthält.
SchemaName String Der Name des Schema, das den Index enthält.
TableName String Der Name der Tabelle, die den Index enthält.
IndexName String Der Indexname.
ColumnName String Der Name der mit dem Index verknüpften Spalte.
IsUnique Boolean Wahr, wenn der Index eindeutig ist. Andernfalls falsch.
IsPrimary Boolean Wahr, wenn der Index ein Primärschlüssel ist. Andernfalls falsch.
Type Int16 Ein ganzzahliger Wert, der dem Indextyp entspricht: Statistik (0), gruppiert (1), gehasht (2) oder Sonstiges (3).
SortOrder String Die Sortierreihenfolge: A für aufsteigend oder D für absteigend.
OrdinalPosition Int16 Die Sequenznummer der Spalte im Index.

Sys_connection_props

Gibt Informationen zu den verfügbaren Verbindungseigenschaften und den in der Verbindungszeichenfolge festgelegten Eigenschaften zurück.

Bei der Abfrage dieser Tabelle sollte die Konfigurationsverbindungszeichenfolge verwendet werden:

jdbc:cdata:odoo:config:

Mit dieser Verbindungszeichenfolge können Sie diese Tabelle ohne eine gültige Verbindung Abfrage.

Die folgende Abfrage ruft alle Verbindungseigenschaften ab, die in der Verbindungszeichenfolge festgelegt oder über einen Standardwert gesetzt wurden:

SELECT * FROM sys_connection_props WHERE Value <> ''
Spalten
Name Typ Beschreibung
Name String Der Name der Verbindungseigenschaft.
ShortDescription String Eine kurze Beschreibung.
Type String Der Datentyp der Verbindungseigenschaft.
Default String Der Standardwert, sofern nicht explizit einer festgelegt wurde.
Values String Eine durch Kommas getrennte Liste möglicher Werte. Wenn ein anderer Wert angegeben wird, wird ein Validierungsfehler ausgegeben.
Value String Der von Ihnen festgelegte Wert oder ein vorkonfigurierter Standard.
Required Boolean Ob für die Immobilie eine Anschlusspflicht besteht.
Category String Die Kategorie der Verbindungseigenschaft.
IsSessionProperty String Ob die Eigenschaft eine Sitzungseigenschaft ist, die zum Speichern von Informationen zur aktuellen Verbindung verwendet wird.
Sensitivity String Die Vertraulichkeitsstufe der Eigenschaft. Diese gibt Aufschluss darüber, ob die Eigenschaft in Protokollierungs- und Authentifizierungsformularen verschleiert wird.
PropertyName String Eine verkürzte Form des Verbindungseigenschaftsnamens in Camel-Case-Schreibweise.
Ordinal Int32 Der Index des Parameters.
CatOrdinal Int32 Der Index der Parameterkategorie.
Hierarchy String Zeigt zugehörige abhängige Eigenschaften an, die zusammen mit dieser festgelegt werden müssen.
Visible Boolean Informiert, ob die Eigenschaft in der Verbindungs-Benutzeroberfläche sichtbar ist.
ETC String Diverse sonstige Informationen zum Objekt.

Sys_sqlinfo

Beschreibt die SELECT- Abfrage, die der Connector an die Datenquelle auslagern kann.

Gemeinsame Abfrageverarbeitung

Wenn Sie mit Datenquellen arbeiten, die SQL-92 nicht unterstützen, können Sie die Ansicht sys_sqlinfo Abfrage, um die Abfrage der zugrunde liegenden APIs in SQL-Syntax zu ermitteln. Der Connector verlagert so viel wie möglich von der Verarbeitung der SELECT-Anweisung auf den Server und verarbeitet den Rest der Abfrage dann im Speicher.

Entdecken der SELECT-Funktionen der Datenquelle

Nachfolgend sehen Sie einen Beispieldatensatz mit SQL-Funktionen. Der folgende Ergebnissatz zeigt die SELECT-Funktionalität an, die der Connector auf die Datenquelle oder die Prozessclientseite auslagern kann. Ihre Datenquelle unterstützt möglicherweise zusätzliche SQL-Syntax. Einige Aspekte der SELECT-Funktionalität werden in einer durch Kommas getrennten Liste zurückgegeben, sofern sie unterstützt werden; andernfalls enthält die Spalte NO.

Name Beschreibung Mögliche Werte
AGGREGATE_FUNCTIONS Unterstützte Aggregatfunktionen. AVG, COUNT, MAX, MIN, SUM, DISTINCT
COUNT Ob die COUNT-Funktion unterstützt wird. YES, NO
IDENTIFIER_QUOTE_OPEN_CHAR Das öffnende Zeichen, das zum Escapen eines Bezeichners verwendet wird. [
IDENTIFIER_QUOTE_CLOSE_CHAR Das abschließende Zeichen, das zum Escapen eines Bezeichners verwendet wird. ]
SUPPORTED_OPERATORS Eine Liste unterstützter SQL-Operatoren. =, >, <, >=, <=, <>, !=, LIKE, NOT LIKE, IN, NOT IN, IS NULL, IS NOT NULL, AND, OR
GROUP_BY Ob GROUP BY unterstützt wird und wenn ja, in welchem Umfang. NO, NO_RELATION, EQUALS_SELECT, SQL_GB_COLLATE
STRING_FUNCTIONS Unterstützte String-Funktionen. LENGTH, CHAR, LOCATE, REPLACE, SUBSTRING, RTRIM, LTRIM, RIGHT, LEFT, UCASE, SPACE, SOUNDEX, LCASE, CONCAT, ASCII, REPEAT, OCTET, BIT, POSITION, INSERT, TRIM, UPPER, REGEXP, LOWER, DIFFERENCE, CHARACTER, SUBSTR, STR, REVERSE, PLAN, UUIDTOSTR, TRANSLATE, TRAILING, TO, STUFF, STRTOUUID, STRING, SPLIT, SORTKEY, SIMILAR, REPLICATE, PATINDEX, LPAD, LEN, LEADING, KEY, INSTR, INSERTSTR, HTML, GRAPHICAL, CONVERT, COLLATION, CHARINDEX, BYTE
NUMERIC_FUNCTIONS Unterstützte numerische Funktionen. ABS, ACOS, ASIN, ATAN, ATAN2, CEILING, COS, COT, EXP, FLOOR, LOG, MOD, SIGN, SIN, SQRT, TAN, PI, RAND, DEGREES, LOG10, POWER, RADIANS, ROUND, TRUNCATE
TIMEDATE_FUNCTIONS Unterstützte Datums-/Uhrzeitfunktionen. NOW, CURDATE, DAYOFMONTH, DAYOFWEEK, DAYOFYEAR, MONTH, QUARTER, WEEK, YEAR, CURTIME, HOUR, MINUTE, SECOND, TIMESTAMPADD, TIMESTAMPDIFF, DAYNAME, MONTHNAME, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, EXTRACT
REPLICATION_SKIP_TABLES Zeigt an, dass während der Replikation Tabellen übersprungen wurden.
REPLICATION_TIMECHECK_COLUMNS Ein Zeichenfolgenarray mit einer Liste von Spalten, die (in der angegebenen Reihenfolge) zur Überprüfung verwendet werden, ob sie während der Replikation als geänderte Spalte verwendet werden sollen.
IDENTIFIER_PATTERN Zeichenfolgenwert, der angibt, welche Zeichenfolge für einen Bezeichner gültig ist.
SUPPORT_TRANSACTION Gibt an, ob der Anbieter Transaktionen wie Commit und Rollback unterstützt. YES, NO
DIALECT Gibt den zu verwendenden SQL-Dialekt an.
KEY_PROPERTIES Gibt die Eigenschaften an, die die einheitliche Datenbank identifizieren.
SUPPORTS_MULTIPLE_SCHEMAS Gibt an, ob für den Anbieter mehrere Schemas vorhanden sein können. YES, NO
SUPPORTS_MULTIPLE_CATALOGS Gibt an, ob für den Anbieter mehrere Kataloge vorhanden sein können. YES, NO
DATASYNCVERSION Die für den Zugriff auf diesen Treiber erforderliche Data Sync-Version. Standard, Starter, Professional, Enterprise
DATASYNCCATEGORY Die Kategorie „Datensynchronisierung“ dieses Treiber. Source, Destination, Cloud Destination
SUPPORTSENHANCEDSQL Ob erweiterte SQL-Funktionen über das hinaus, was die API bietet, unterstützt werden. TRUE, FALSE
SUPPORTS_BATCH_OPERATIONS Ob Charge Operationen unterstützt werden. YES, NO
SQL_CAP Alle unterstützten SQL-Funktionen für diesen Treiber. SELECT, INSERT, DELETE, UPDATE, TRANSACTIONS, ORDERBY, OAUTH, ASSIGNEDID, LIMIT, LIKE, BULKINSERT, COUNT, BULKDELETE, BULKUPDATE, GROUPBY, HAVING, AGGS, OFFSET, REPLICATE, COUNTDISTINCT, JOINS, DROP, CREATE, DISTINCT, INNERJOINS, SUBQUERIES, ALTER, MULTIPLESCHEMAS, GROUPBYNORELATION, OUTERJOINS, UNIONALL, UNION, UPSERT, GETDELETED, CROSSJOINS, GROUPBYCOLLATE, MULTIPLECATS, FULLOUTERJOIN, MERGE, JSONEXTRACT, BULKUPSERT, SUM, SUBQUERIESFULL, MIN, MAX, JOINSFULL, XMLEXTRACT, AVG, MULTISTATEMENTS, FOREIGNKEYS, CASE, LEFTJOINS, COMMAJOINS, WITH, LITERALS, RENAME, NESTEDTABLES, EXECUTE, BATCH, BASIC, INDEX
PREFERRED_CACHE_OPTIONS Ein Zeichenfolgenwert gibt die bevorzugten Cacheoptionen an.
ENABLE_EF_ADVANCED_QUERY Gibt an, ob der Treiber erweiterte Abfragen aus dem Entity Framework direkt unterstützt. Wenn nicht, werden die Abfragen clientseitig verarbeitet. YES, NO
PSEUDO_COLUMNS Ein Zeichenfolgenarray, das die verfügbaren Pseudospalten angibt.
MERGE_ALWAYS Wenn der Wert „true“ ist, wird der Merge-Modus in der Datensynchronisierung zwangsweise ausgeführt. TRUE, FALSE
REPLICATION_MIN_DATE_QUERY Eine Abfrage zum Zurückgeben des Startdatums und der Startzeit der Replikation.
REPLICATION_MIN_FUNCTION Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zum Ausführen eines serverseitigen Minimums verwendet werden soll.
REPLICATION_START_DATE Ermöglicht einem Anbieter, ein Replikationsstartdatum anzugeben.
REPLICATION_MAX_DATE_QUERY Eine Abfrage zum Zurückgeben des Enddatums und der Endzeit der Replikation.
REPLICATION_MAX_FUNCTION Ermöglicht einem Anbieter, den Formelnamen anzugeben, der zur Ausführung eines serverseitigen Max. verwendet werden soll.
IGNORE_INTERVALS_ON_INITIAL_REPLICATE Eine Liste von Tabellen, bei denen das Aufteilen der Replikation in Blöcke bei der ersten Replikation übersprungen wird.
CHECKCACHE_USE_PARENTID Gibt an, ob die CheckCache-Anweisung für die übergeordnete Schlüsselspalte ausgeführt werden soll. TRUE, FALSE
CREATE_SCHEMA_PROCEDURES Gibt gespeicherte Prozeduren an, die zum Generieren von Schema verwendet werden können.

Die folgende Abfrage ruft die Operatoren ab, die in der WHERE-Klausel verwendet werden können:

SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'

Beachten Sie, dass einzelne Tabellen unterschiedliche Einschränkungen oder Anforderungen an die WHERE-Klausel haben können; siehe Datenmodell Abschnitt für weitere Informationen.

Spalten
Name Typ Beschreibung
NAME String Eine Komponente der SQL-Syntax oder eine Funktion, die auf dem Server verarbeitet werden kann.
VALUE String Details zum unterstützten SQL bzw. zur SQL-Syntax.

Systemidentität

Gibt Informationen zu versuchten Änderungen zurück.

Die folgende Abfrage ruft die IDs der geänderten Zeilen in einer Operation Charge:

SELECT * FROM sys_identity
Spalten
Name Typ Beschreibung
Id String Die von einer Operation zurückgegebene, von der Datenbank generierte ID.
Batch String Eine Kennung für den Charge. 1 für einen einzelnen Operation.
Operation String Das Ergebnis der Operation im Charge: EINGEFÜGT, AKTUALISIERT oder GELÖSCHT.
Message String SUCCESS oder eine Fehlermeldung, wenn das Update im Charge fehlgeschlagen ist.

Erweiterte Konfigurationseigenschaften

Die erweiterten Konfigurationseigenschaften sind die verschiedenen Optionen, die zum Herstellen einer Verbindung verwendet werden können. Dieser Abschnitt enthält eine vollständige Liste der Optionen, die Sie konfigurieren können. Klicken Sie auf die Links, um weitere Einzelheiten zu erfahren.

Authentifizierung

Eigenschaft Beschreibung
URL Die Basis URL der Odoo-Site, mit der Sie eine Verbindung herstellen. Beispiel: http://my.odoo.com/.
Database Der Name der Odoo-Datenbank, mit der Sie sich verbinden.
User Das zur Authentifizierung verwendete Odoo-Benutzerkonto.
APIToken Das API Token (oder Passwort), das zur Authentifizierung des Benutzers verwendet wird.
CheckPermissions Ob die Berechtigungen des Odoo Benutzers verwendet werden sollen, um zu bestimmen, welche Tabellen und Ansichten aufgelistet werden sollen.

SSL

Eigenschaft Beschreibung
SSLServerCert Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

Schema

Eigenschaft Beschreibung
Location Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.
BrowsableSchemas Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC.
Views Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC.
AllowComputedFields Boolescher Wert, der bestimmt, ob berechnete Namen aus Odoo Spalten zugeordnet werden.
ExpandReferences Boolescher Wert, der bestimmt, ob die mehrwertigen Many2Many- und One2Many-Felder in separate Zeilen erweitert werden.
UseDisplayNames Boolescher Wert, der bestimmt, ob die Anzeigenamen für die Spalten statt der API -Namen verwendet werden sollen.

Verschiedenes

Eigenschaft Beschreibung
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
Pagesize Die maximale Anzahl der Ergebnisse, die pro Seite von Odoo zurückgegeben werden sollen.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.

Authentifizierung

Dieser Abschnitt enthält eine vollständige Liste der Authentifizierungseigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
URL Die Basis URL der Odoo-Site, mit der Sie eine Verbindung herstellen. Beispiel: http://my.odoo.com/.
Database Der Name der Odoo-Datenbank, mit der Sie sich verbinden.
User Das zur Authentifizierung verwendete Odoo-Benutzerkonto.
APIToken Das API Token (oder Passwort), das zur Authentifizierung des Benutzers verwendet wird.
CheckPermissions Ob die Berechtigungen des Odoo Benutzers verwendet werden sollen, um zu bestimmen, welche Tabellen und Ansichten aufgelistet werden sollen.

URL

Die Basis URL der Odoo-Site, mit der Sie eine Verbindung herstellen. Beispiel: http://my.odoo.com/.

Datentyp

string

Standardwert

""

Hinweise

Die Basis URL der Odoo-Site, mit der Sie eine Verbindung herstellen. Beispiel: http://my.odoo.com/.

Datenbank

Der Name der Odoo-Datenbank, mit der Sie eine Verbindung herstellen.

Datentyp

string

Standardwert

""

Hinweise

Wenn Sie sich online mit Odoo verbinden, ist dieser Wert normalerweise der Name Ihrer benutzerdefinierten Odoo Domäne. Wenn Sie sich beispielsweise mit https://contoso.odoo.com, dann sollte die Datenbank auf contoso eingestellt sein.

Wenn Sie eine Verbindung zu einer lokalen Instanz von Odoo herstellen, können Sie diesen Wert finden, indem Sie sich von Odoo abmelden und vom Anmeldebildschirm aus die Seite „Datenbanken verwalten“ öffnen. Dort können Sie die Datenbank bestimmen, zu der Sie eine Verbindung herstellen müssen.

Benutzer

Das zur Authentifizierung verwendete Odoo-Benutzerkonto.

Datentyp

string

Standardwert

""

Hinweise

Zusammen mit APIToken, wird dieses Feld zur Authentifizierung gegenüber dem Odoo-Server verwendet.

APIToken

Das API Token (oder Passwort), das zur Authentifizierung des Benutzers verwendet wird.

Datentyp

string

Standardwert

""

Hinweise

Bei Verwendung von Odoo 14 und höher kann diese Option entweder auf ein API Token oder ein Passwort eingestellt werden. API Token werden Passwörtern vorgezogen.

Berechtigungen prüfen

Ob die Berechtigungen des Odoo Benutzers verwendet werden sollen, um zu bestimmen, welche Tabellen und Ansichten aufgelistet werden sollen.

Datentyp

bool

Standardwert

true

Hinweise

Jeder Benutzer in Odoo hat für einige Modelle unterschiedliche Berechtigungen. Manche Modelle kann er ändern, andere lesen und auf manche kann er möglicherweise überhaupt nicht zugreifen. Wenn CheckPermissions auf „true“ (Standard) gesetzt ist, werden die Modellberechtigungen geprüft, sodass änderbare Modelle als Tabellen klassifiziert werden, schreibgeschützte Modelle als Ansichten klassifiziert werden und nicht zugängliche Modelle nicht aufgelistet werden.

Wenn CheckPermissions „false“ ist, werden alle Modelle in Odoo als Tabellen aufgelistet und die Berechtigungsprüfung wird übersprungen.

Zum Überprüfen der Modellberechtigungen muss ein Administrator Ihrem Benutzer schreibgeschützten Zugriff auf das Modell „ir.model.access“ gewähren, da es für die meisten Benutzer standardmäßig nicht lesbar ist. Wenn dem verbindenden Benutzer kein Zugriff auf dieses Modell gewährt werden kann, setzen Sie diese Option auf „false“.

SSL

Dieser Abschnitt enthält eine vollständige Liste der SSL-Eigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
SSLServerCert Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

SSLServerCert

Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL.

Datentyp

string

Standardwert

""

Hinweise

Bei Verwendung einer TLS/SSL-Verbindung kann diese Eigenschaft verwendet werden, um das vom Server zu akzeptierende TLS/SSL-Zertifikat anzugeben. Jedes andere Zertifikat, dem der Computer nicht vertraut, wird abgelehnt.

Diese Eigenschaft kann folgende Formen annehmen:

Beschreibung Beispiel
Ein vollständiges PEM-Zertifikat (Beispiel der Kürze halber gekürzt) -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE-----
Ein Pfad zu einer lokalen Datei, die das Zertifikat enthält C:\cert.cer
Der öffentliche Schlüssel (Beispiel der Kürze halber gekürzt) -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY-----
Der MD5-Fingerabdruck (Hex-Werte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) ecadbdda5a1529c58a1e9e09828d70e4
Der SHA1-Fingerabdruck (Hex-Werte können auch durch Leerzeichen oder Doppelpunkte getrennt sein) 34a929226ae0819f2ec14b4a3d904f801cbb150d

Wenn nicht angegeben, wird jedes vom Computer vertrauenswürdige Zertifikat akzeptiert.

Zertifikate werden vom Computer basierend auf dem Trust Store des Systems als vertrauenswürdig validiert. Der verwendete Trust Store ist der für das System angegebene Wert „javax.net.ssl.trustStore“. Wenn für diese Eigenschaft kein Wert angegeben ist, wird der Standard-Trust Store von Java verwendet (z. B. JAVA_HOME\lib\security\cacerts).

Verwenden Sie „*“, um anzugeben, dass alle Zertifikate akzeptiert werden. Beachten Sie, dass dies aus Sicherheitsgründen nicht empfohlen wird.

Schema

Dieser Abschnitt enthält eine vollständige Liste der Schema, die Sie konfigurieren können.

Eigenschaft Beschreibung
Location Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.
BrowsableSchemas Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA, SchemaB, SchemaC.
Tables Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA, TabelleB, TabelleC.
Views Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA, AnsichtB, AnsichtC.
AllowComputedFields Boolescher Wert, der bestimmt, ob berechnete Namen aus Odoo Spalten zugeordnet werden.
ExpandReferences Boolescher Wert, der bestimmt, ob mehrwertige Many2Many- und One2Many-Felder in separate Zeilen erweitert werden.
UseDisplayNames Boolescher Wert, der bestimmt, ob die Anzeigenamen für die Spalten statt der API -Namen verwendet werden sollen.

Standort

Ein Pfad zum Verzeichnis, das die Schema enthält, die Tabellen, Ansichten und gespeicherte Prozeduren definieren.

Datentyp

string

Standardwert

%APPDATA%\Odoo Data Provider\Schema

Hinweise

Der Pfad zu einem Verzeichnis, das die Schema für den Connector enthält (.rsd-Dateien für Tabellen und Ansichten, .rsb-Dateien für gespeicherte Prozeduren). Der Ordnerspeicherort kann ein relativer Pfad vom Speicherort der ausführbaren Datei sein. Der Location Die Eigenschaft wird nur benötigt, wenn Sie Definitionen anpassen (z. B. einen Spaltennamen ändern, eine Spalte ignorieren usw.) oder das Datenmodell mit neuen Tabellen, Ansichten oder gespeicherten Prozeduren erweitern möchten.

Wenn nichts angegeben wird, ist der Standardspeicherort "%APPDATA%\ Odoo Data Provider\Schema" mit %APPDATA% wird auf das Konfigurationsverzeichnis des Benutzers eingestellt:

Plattform %APPDATA%
Windows Der Wert der Umfeld APPDATA
Mac ~/Bibliothek/Anwendungsunterstützung
Linux ~/.config

DurchsuchbareSchemas

Diese Eigenschaft beschränkt die gemeldeten Schemata auf eine Teilmenge der verfügbaren Schemata. Beispiel: BrowsableSchemas=SchemaA,SchemaB,SchemaC.

Datentyp

string

Standardwert

""

Hinweise

Das Auflisten der Schemata aus Datenbanken kann aufwändig sein. Die Bereitstellung einer Liste von Schemata in der Verbindungszeichenfolge verbessert die Leistung.

Tabellen

Diese Eigenschaft beschränkt die gemeldeten Tabellen auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Tabellen=TabelleA,TabelleB,TabelleC.

Datentyp

string

Standardwert

""

Hinweise

Das Auflisten der Tabellen aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Tabellen in der Verbindungszeichenfolge verbessert die Leistung des Connectors.

Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären.

Geben Sie die gewünschten Tabellen in einer durch Kommas getrennten Liste an. Jede Tabelle sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.

Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.

Ansichten

Beschränkt die gemeldeten Ansichten auf eine Teilmenge der verfügbaren Tabellen. Beispiel: Ansichten=AnsichtA,AnsichtB,AnsichtC.

Datentyp

string

Standardwert

""

Hinweise

Das Auflisten der Ansichten aus einigen Datenbanken kann teuer sein. Die Bereitstellung einer Liste von Ansichten in der Verbindungszeichenfolge verbessert die Leistung des Connectors.

Diese Eigenschaft kann auch als Alternative zum automatischen Auflisten von Ansichten verwendet werden, wenn Sie bereits wissen, mit welchen Sie arbeiten möchten, und es sonst zu viele wären.

Geben Sie die gewünschten Ansichten in einer durch Kommas getrennten Liste an. Jede Ansicht sollte ein gültiger SQL-Bezeichner sein, wobei alle Sonderzeichen mit eckigen Klammern, Anführungszeichen oder Backticks maskiert werden. Beispiel: Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.

Beachten Sie, dass Sie beim Herstellen einer Verbindung zu einer Datenquelle mit mehreren Schemata oder Katalogen den vollqualifizierten Namen der Tabelle in dieser Eigenschaft angeben müssen, wie im letzten Beispiel hier, um Mehrdeutigkeiten zwischen Tabellen zu vermeiden, die in mehreren Katalogen oder Schemata vorhanden sind.

Berechnete Felder zulassen

Boolescher Wert, der bestimmt, ob berechnete Namen aus Odoo Spalten zugeordnet werden.

Datentyp

bool

Standardwert

false

Hinweise

Intern speichert Odoo einige Felder direkt in seiner Datenbank und berechnet andere Felder dynamisch, wenn Sie sie anfordern. Während gespeicherte Felder normalerweise schnell abgerufen werden können, können berechnete Felder möglicherweise viel langsamer sein, da Odoo für jede Zeile zusätzliche Arbeit leisten muss.

Standardmäßig ist diese Eigenschaft „false“ und berechnete Felder sind nicht verfügbar. Sie können diese Eigenschaft auf „true“ setzen, wenn Sie auf ein berechnetes Feld zugreifen müssen. Dies führt allerdings dazu, dass Abfragen (einschließlich Sternabfragen) bei vielen Tabellen länger dauern.

AusklappenReferenzen

Boolescher Wert, der bestimmt, ob mehrwertige Many2Many- und One2Many-Felder in separate Zeilen erweitert werden.

Datentyp

bool

Standardwert

false

Hinweise

Standardmäßig werden die Felder Many2Many und One2Many in einzelne, durch Kommas getrennte Werte zusammengefasst. Ein Datensatz in den Kalenderereignis-IDs erzeugt beispielsweise ein Ergebnis wie dieses, wenn die Partner 13 und 57 teilnehmen.

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

Wenn diese Option aktiviert ist, erweitert der Connector jede Kombination mehrwertiger Feldwerte über mehrere Zeilen. Dies bedeutet, dass Zeilendaten dupliziert werden, vereinfacht aber das JOIN zwischen Tabellen, die durch mehrwertige Referenzen verknüpft sind.

Darüber hinaus verwendet der Connector einen separaten Primärschlüssel namens id:multi, da id) bei doppelten Zeilen nicht eindeutig ist. Dieser Primärschlüssel wird clientseitig generiert und seine Verwendung sollte in Filtern vermieden werden, da er von den genauen Zeilen abhängt, die von den von Odoo ausgewerteten Filtern zurückgegeben werden.

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

Beachten Sie, dass diese Option keinen Einfluss darauf hat, wie Einfügungen verarbeitet werden. Wenn Sie einen Datensatz mit einem mehrwertigen Feld einfügen möchten, müssen Sie immer einen durch Kommas getrennten Wert einfügen.

Anzeigenamen verwenden

Boolescher Wert, der bestimmt, ob die Anzeigenamen für die Spalten anstelle der API -Namen verwendet werden sollen.

Datentyp

bool

Standardwert

true

Hinweise

Anzeigenamen können in Zukunft geändert werden. Setzen Sie dies auf „false“, wenn Sie sicherstellen möchten, dass die Spaltennamen immer konstant sind.

Verschiedenes

Dieser Abschnitt enthält eine vollständige Liste verschiedener Eigenschaften, die Sie konfigurieren können.

Eigenschaft Beschreibung
MaxRows Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.
Other Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.
Pagesize Die maximale Anzahl der Ergebnisse, die pro Seite von Odoo zurückgegeben werden sollen.
PseudoColumns Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.
Timeout Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.

MaxRows

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.

Datentyp

int

Standardwert

-1

Hinweise

Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder Gruppierung verwendet wird. Dadurch werden Leistungsprobleme zur Entwurfszeit vermieden.

Andere

Diese versteckten Eigenschaften werden nur in bestimmten Anwendungsfällen verwendet.

Datentyp

string

Standardwert

""

Hinweise

Die unten aufgeführten Eigenschaften sind für bestimmte Anwendungsfälle verfügbar. Für normale Anwendungsfälle und Funktionen von Treiber sollten diese Eigenschaften nicht erforderlich sein.

Geben Sie mehrere Eigenschaften in einer durch Semikolon getrennten Liste an.

Integration und Formatierung
Eigenschaft Beschreibung
DefaultColumnSize Legt die Standardlänge von Zeichenfolgefeldern fest, wenn die Datenquelle keine Spaltenlänge in den Metadaten bereitstellt. Der Standardwert ist 2000.
ConvertDateTimeToGMT Bestimmt, ob Datums-/Uhrzeitwerte in GMT statt in die lokale Zeit des Computers konvertiert werden sollen.
RecordToFile=filename Protokolliert den zugrunde liegenden Socket-Datenübertragungsvorgang in die angegebene Datei.

Seitengröße

Die maximale Anzahl der Ergebnisse, die pro Seite von Odoo zurückgegeben werden sollen.

Datentyp

int

Standardwert

5000

Hinweise

Der Pagesize Eigenschaft beeinflusst die maximale Anzahl von Ergebnissen, die pro Seite von Odoo zurückgegeben werden. Das Festlegen eines höheren Wertes kann zu einer besseren Leistung führen, allerdings auf Kosten des zusätzlichen Speichers, der pro verbrauchter Seite zugewiesen wird.

Pseudospalten

Diese Eigenschaft gibt an, ob Pseudospalten als Spalten in die Tabelle aufgenommen werden sollen oder nicht.

Datentyp

string

Standardwert

""

Hinweise

Diese Einstellung ist besonders hilfreich im Entity Framework, da Sie dort keinen Wert für eine Pseudospalte festlegen können, es sei denn, es handelt sich um eine Tabellenspalte. Der Wert dieser Verbindungseinstellung hat das Format „Tabelle1=Spalte1, Tabelle1=Spalte2, Tabelle2=Spalte3“. Sie können das Zeichen „*“ verwenden, um alle Tabellen und alle Spalten einzuschließen, z. B. „*=*“.

Zeitüberschreitung

Der Wert in Sekunden, bis der Timeout-Fehler auftritt und der Operation abgebrochen wird.

Datentyp

int

Standardwert

60

Hinweise

Wenn Timeout = 0, Operationen werden nicht abgebrochen. Die Operationen werden ausgeführt, bis sie erfolgreich abgeschlossen sind oder bis ein Fehler auftritt.

Wenn Timeout abläuft und der Operation noch nicht abgeschlossen ist, löst der Connector eine Ausnahme aus.