Odoo v2-Verbindungsdetails
Einführung
Connector-Version
Diese Dokumentation basiert auf Version 23.0.8858 des Connectors.
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:
- Ö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.
- Öffnen Sie die Seite „Gruppen“ (unter dem Dropdown-Menü „Benutzer“) und erstellen Sie eine neue Gruppe
- Stellen Sie die Anwendung auf „Administration“ und den Namen auf „Service Access“ ein.
- Fügen Sie alle Benutzer hinzu, die Zugriff auf den Dienst benötigen, auf der Tab „Benutzer“
- 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“.
- 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.
Abfrageverarbeitung
Der Connector verlagert möglichst viel der Verarbeitung der SELECT-Anweisung auf Odoo und verarbeitet dann den Rest der Abfrage im Speicher (clientseitig).
Siehe Abfrageverarbeitung für weitere Informationen.
Benutzerdefinierte Ansichten
Mit dem Jitterbit Connector für Odoo 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"
Definieren von Ansichten mit DDL-Anweisungen
Der Connector kann das Schema auch über DDL-Anweisungen wie CREATE LOCAL VIEW, ALTER LOCAL VIEW und DROP LOCAL VIEW erstellen und ändern.
Erstellen einer Ansicht
Um eine neue Ansicht mit DDL-Anweisungen zu erstellen, geben Sie den Ansichtsnamen und die Abfrage wie folgt an:
CREATE LOCAL VIEW`[MeinAnsichtsname] `AS SELECT * FROM Customers LIMIT 20;
Wenn keine JSON-Datei vorhanden ist, erstellt der obige Code eine. Die Ansicht wird dann in der JSON-Konfigurationsdatei erstellt und ist nun erkennbar. Der Speicherort der JSON-Datei wird durch angegeben UserDefinedViews
Verbindungseigenschaft.
Ändern einer Ansicht
Um eine vorhandene Ansicht zu ändern, geben Sie den Namen der vorhandenen Ansicht zusammen mit der neuen Abfrage an, die Sie stattdessen verwenden möchten:
ALTER LOCAL VIEW`[MeinAnsichtsname] `AS SELECT * FROM Customers WHERE TimeModified > '3/1/2020';
Die Ansicht wird dann in der JSON-Konfigurationsdatei aktualisiert.
Löschen einer Ansicht
Um eine vorhandene Ansicht zu löschen, geben Sie den Namen eines vorhandenen Schema neben der neuen Abfrage an, die Sie stattdessen verwenden möchten.
DROP LOCAL VIEW [MyViewName]
Dadurch wird die Ansicht aus der JSON-Konfigurationsdatei entfernt. Sie kann nicht mehr abgefragt werden.
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 ähneln Tabellen in der Art und Weise, wie Daten dargestellt werden; Ansichten sind jedoch schreibgeschützt.
Abfragen können für eine Ansicht ausgeführt werden, als wäre sie eine normale Tabelle.
Jitterbit-Connector für Odoo 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 sind funktionsähnliche Schnittstellen, die die Funktionalität des Connectors über einfache SELECT/INSERT/UPDATE/DELETE-Operationen mit Odoo hinaus erweitern.
Gespeicherte Prozeduren akzeptieren eine Liste von Parametern, führen ihre beabsichtigte Funktion aus und geben dann alle relevanten Antwortdaten von Odoo zurück, zusammen mit einer Angabe, ob die Prozedur erfolgreich war oder fehlgeschlagen ist.
Jitterbit-Konnektor für gespeicherte Odoo Prozeduren
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 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:
- sys_catalogs: Listet die verfügbaren Datenbanken auf.
- sys_schemas: Listet die verfügbaren Schemata auf.
- sys_tables: Listet die verfügbaren Tabellen und Ansichten auf.
- sys_tablecolumns: Beschreibt die Spalten der verfügbaren Tabellen und Ansichten.
- sys_procedures: Beschreibt die verfügbaren gespeicherten Prozeduren.
- sys_procedureparameters: Beschreibt Parameter gespeicherter Prozeduren.
- sys_keycolumns: Beschreibt die Primär- und Fremdschlüssel.
- sys_indexes: Beschreibt die verfügbaren Indizes.
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. |
IsReadOnly | Boolean | Ob die Spalte schreibgeschützt ist. |
IsKey | Boolean | Gibt an, ob ein von sys_tablecolumns zurückgegebenes Feld der Primärschlüssel der Tabelle 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_primarykeys
Beschreibt die Primärschlüssel.
Die folgende Abfrage ruft die Primärschlüssel aus allen Tabellen und Ansichten ab:
SELECT * FROM sys_primarykeys
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. |
KeySeq | String | Die Sequenznummer des Primärschlüssels. |
KeyName | String | Der Name des Primärschlüssels. |
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 | Verschiedene sonstige Informationen zum Objekt. |
Sys_sqlinfo
Beschreibt die SELECT- Abfrage, die der Connector an die Datenquelle auslagern kann.
Entdecken der SELECT-Funktionen der Datenquelle
Nachfolgend sehen Sie einen Beispieldatensatz mit SQL-Funktionen. 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.
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. |
OdooEdition | Die verwendete Odoo-Edition. Stellen Sie entweder Odoo Online oder Odoo On-Premise ein. |
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. |
Eigenschaft | Beschreibung |
---|---|
SSLServerCert | Das vom Server zu akzeptierende Zertifikat bei einer Verbindung per TLS/SSL. |
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. |
ShowParameterizedTables | Tabellen anzeigen, die Eingaben erfordern. |
UseDisplayNames | Boolescher Wert, der bestimmt, ob die Anzeigenamen für die Spalten statt der API -Namen verwendet werden sollen. |
Eigenschaft | Beschreibung |
---|---|
Language | Diese Eigenschaft gibt die Sprache an, in der die Daten zurückgegeben werden sollen. |
MaxRows | Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln. |
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. |
UserDefinedViews | Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält. |
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. |
OdooEdition | Die verwendete Odoo-Edition. Stellen Sie entweder Odoo Online oder Odoo On-Premise ein. |
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 ist die Datenbank contoso. Diese Eigenschaft wird aus der URL Eigenschaft interpretiert.
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.
OdooAusgabe
Die verwendete Odoo-Edition. Stellen Sie entweder „Odoo Online“ oder „Odoo On-Premise“ ein.
Mögliche Werte
Odoo Online
, Odoo OnPremise
Datentyp
string
Standardwert
Odoo Online
Hinweise
Die verwendete Odoo-Edition. Stellen Sie entweder Odoo Online oder Odoo On-Premise ein. Wenn die OdooEdition auf Odoo Online eingestellt ist, berücksichtigt der Treiber die Systemkultur beim Verarbeiten der Float-/Decimal-/Double-Datentypen für Insert-Anweisungen.
Benutzer
Das zur Authentifizierung verwendete Odoo-Benutzerkonto.
Datentyp
string
Standardwert
""
Hinweise
Zusammen mit APIToken, dieses Feld wird 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 die mehrwertigen Many2Many- und One2Many-Felder in separate Zeilen erweitert werden. |
ShowParameterizedTables | Tabellen anzeigen, die Eingaben erfordern. |
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 INSERTs 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.
ParameterisierteTabellen anzeigen
Tabellen anzeigen, die Eingaben erfordern.
Datentyp
bool
Standardwert
false
Hinweise
Wenn diese Eigenschaft auf „true“ gesetzt ist, werden alle Tabellen oder Ansichten angezeigt, die Eingaben zum Abrufen von Daten erfordern.
Wenn diese Eigenschaft auf „false“ gesetzt ist, werden diese Tabellen und Ansichten ausgeblendet.
Nachfolgend finden Sie die vollständige Liste der Tabellen, die basierend auf dem Wert dieser Eigenschaft angezeigt/ausgeblendet werden:
- 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
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 |
---|---|
Language | Diese Eigenschaft gibt die Sprache an, in der die Daten zurückgegeben werden sollen. |
MaxRows | Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln. |
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. |
UserDefinedViews | Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält. |
Sprache
Diese Eigenschaft gibt die Sprache an, in der die Daten zurückgegeben werden sollen.
Datentyp
string
Standardwert
""
Hinweise
Diese Eigenschaft kann einen der folgenden Werte annehmen:
Eigenschaft | Beschreibung |
---|---|
en_us (default) | Englisch (USA) |
es_MX | Spanisch (MX) / Español (MX) |
es_MX | Spanisch (MX) / Español (MX) |
sq_AL | Albanisch / Shqip |
am_ET | Amharisch / አምሃርኛ |
ar_SY | Arabisch (Syrien) / الْعَرَبيّة |
ar_001 | Arabisch / الْعَرَبيّة |
az_AZ | Aserbaidschanisch / Azərbaycanca |
eu_ES | Baskisch / Euskara |
bn_IN | Bengali / বাংলা |
bs_BA | Bosnisch / bosanski jezik |
bg_BG | Bulgarisch / български език |
my_MM | Burmesisch / ဗမာစာ |
ca_ES | Katalanisch / Català |
zh_HK | Chinesisch (HK) |
zh_CN | Chinesisch (vereinfacht) / 简体中文 |
zh_TW | Chinesisch (traditionell) / 繁體中文 |
hr_HR | Kroatisch / hrvatski jezik |
cs_CZ | Tschechisch / Čeština |
da_DK | Dänisch / Dansk |
nl_BE | Niederländisch (BE) / Nederlands (BE) |
nl_NL | Niederländisch / Nederlands |
en_AU | Englisch (AU) |
en_CA | Englisch (CA) |
en_IN | Englisch (IN) |
en_NZ | Englisch (NZ) |
en_GB | Englisch (UK) |
et_EE | Estnisch / Eesti-Kiel |
fi_FI | Finnisch / Suomi |
fr_BE | Französisch (BE) / Français (BE) |
fr_CA | Französisch (CA) / Français (CA) |
fr_CH | Französisch (CH) / Français (CH) |
fr_FR | Französisch / Français |
gl_ES | Galizisch / Galego |
ka_GE | Georgisch / ქართული ენა |
de_CH | Deutsch (CH) / Deutsch (CH) |
de_DE | Deutsch / Deutsch |
el_GR | Griechisch / Ελληνικά |
gu_IN | Gujarati / ગુજરાતી |
he_IL | Hebräisch / עִבְרִי |
hi_IN | Hindi / हिंदी |
hu_HU | Ungarisch / Magyarisch |
id_ID | Indonesisch / Bahasa Indonesia |
it_IT | Italienisch / Italiano |
ja_JP | Japanisch / 日本語 |
kab_DZ | Kabyle / Taqbaylit |
km_KH | Khmer / ភាសាខ្មែរ |
ko_KP | Koreanisch (KP) / 한국어 (KP) |
ko_KR | Koreanisch (KR) / 한국어 (KR) |
lo_LA | Laotisch / ພາສາລາວ |
lv_LV | Lettisch / latviešu valoda |
lt_LT | Litauisch / Lietuvių kalba |
lb_LU | Luxemburgisch |
mk_MK | Mazedonisch / македонски јазик |
ms_MY | Malaiisch / Bahasa Melayu |
ml_IN | Malayalam / മലയാളം |
mn_MN | Mongolisch / монгол |
nb_NO | Norwegisches Bokmål / Norsk Bokmål |
fa_IR | Persisch / فارسی |
pl_PL | Polnisch / Język polski |
pt_AO | Portugiesisch (AO) / Português (AO) |
pt_BR | Portugiesisch (BR) / Português (BR) |
pt_PT | Portugiesisch / Português |
ro_RO | Rumänisch / română |
ru_RU | Russisch / русский язык |
sr_RS | Serbisch (Kyrillisch) / српски |
sr@latin | Serbisch (Latein) / srpski |
sk_SK | Slowakisch / Slovenský jazyk |
sl_SI | Slowenisch / slovenščina |
es_AR | Spanisch (AR) / Español (AR) |
es_BO | Spanisch (BO) / Español (BO) |
es_CL | Spanisch (CL) / Español (CL) |
es_CO | Spanisch (CO) / Español (CO) |
es_CR | Spanisch (CR) / Español (CR) |
es_DO | Spanisch (DO) / Español (DO) |
es_EC | Spanisch (EG) / Español (EG) |
es_GT | Spanisch (GT) / Español (GT) |
es_419 | Spanisch (Lateinamerika) / Español (América Latina) |
es_PA | Spanisch (PA) / Español (PA) |
es_PE | Spanisch (PE) / Español (PE) |
es_PY | Spanisch (PY) / Español (PY) |
es_UY | Spanisch (UY) / Español (UY) |
es_VE | Spanisch (VE) / Español (VE) |
es_ES | Spanisch / Español |
sv_SE | Schwedisch / Svenska |
tl_PH | Tagalog / Philippinisch |
te_IN | Telugu / తెలుగు |
th_TH | Thailändisch / ภาษาไทย |
tr_TR | Türkisch / Türkçe |
uk_UA | Ukrainisch / українська |
vi_VN | Vietnamesisch / Tiếng Việt |
MaxRows
Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
Datentyp
int
Standardwert
-1
Hinweise
Begrenzt die Anzahl der zurückgegebenen Zeilen, wenn in der Abfrage keine Aggregation oder GROUP BY verwendet wird. Dies hat Vorrang vor LIMIT-Klauseln.
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
Die 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.
BenutzerdefinierteAnsichten
Ein Dateipfad, der auf die JSON-Konfigurationsdatei verweist, die Ihre benutzerdefinierten Ansichten enthält.
Datentyp
string
Standardwert
""
Hinweise
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, um den Speicherort Ihrer JSON-Konfigurationsdatei anzugeben. Beispiel:
"UserDefinedViews", C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json
Beachten Sie, dass der angegebene Pfad nicht in Anführungszeichen steht.