Das Odoo Terminal ist eine technische Schnittstelle in Form einer Browser-Erweiterung für Chrome und Firefox, welche die Interaktion mit Odoo-Instanzen über JSON-RPC-Anfragen ermöglicht. Anstatt ausschließlich die grafische Benutzeroberfläche zu nutzen, stellt dieses Werkzeug eine Kommandozeile bereit, die direkt im Browser operiert und Befehle an das Backend sendet. Die Erweiterung ist mit den Odoo-Versionen 11 bis 19 kompatibel und kann sowohl in lokalen Umgebungen als auch auf Odoo.sh oder Odoo Online verwendet werden.
Odoo Terminal: Zielgruppe und erforderliches technisches Verständnis
Dieses Werkzeug richtet sich primär an Entwickler, Tester und Power User, die über ein fundiertes Verständnis der Odoo-Datenstruktur verfügen. Eine zentrale Voraussetzung für die Nutzung ist die ausgeprägte Kenntnis der technischen Modellnamen, beispielsweise sale.order für Verkaufsaufträge oder res.partner für Kontakte.
Dieses technische Grundverständnis ist deshalb unerlässlich, weil das Terminal die visuelle Logik der Standardansichten umgeht. In Odoo sind Einschränkungen wie das Attribut für Schreibschutz (readonly) oder die Sichtbarkeit von Feldern oft nur auf der Ebene der XML-Ansicht definiert. Da das Terminal Befehle direkt an die API sendet, können Sie diese UI-Einschränkungen ignorieren. Dies erlaubt es Ihnen, Daten in Felder zu schreiben, die in der normalen Ansicht gesperrt oder vollständig ausgeblendet sind. Diese Flexibilität ermöglicht eine präzise Manipulation der Datenbank, erfordert jedoch eine verantwortungsbewusste Handhabung.
Use Cases: Ein Guide für die Praxis
Arbeiten mit Variablen und Recordsets
Dieser Guide soll Ihnen als Inspiration dienen, wie Sie die Konzepte des Odoo Terminals effizient in Ihren Workflow integrieren können. Ein entscheidender Vorteil liegt in der Art und Weise, wie das Terminal Daten als Variablen verarbeitet. Wenn Sie eine Suche, z. B. mit $rs = (search res.partner -d [['name', 'like', 'Testkunde']]), ausführen, erhalten Sie nicht nur eine statische Liste, sondern ein mächtiges Recordset-Objekt im Speicher des Browsers. Dies bedeutet für Sie, dass Sie jederzeit auf spezifische Attribute zugreifen können, um Informationen zu gewinnen. So liefert Ihnen $rs['length'] sofort die Anzahl der gefundenen Datensätze, während $rs['ids'] eine Liste aller Datenbank-IDs extrahiert, die Sie direkt für andere Befehle weiterverwenden können. Möchten Sie den Namen des ersten gefundenen Partners prüfen, gelingt dies einfach über den Zugriff per Index, zum Beispiel mit $rs[0]['display_name'].

Übergabe von Recordsets
Die Variablen dienen als technisches Bindeglied zwischen verschiedenen Operationen. Anstatt IDs manuell zu kopieren, übergeben Sie das gesamte Recordset oder dessen Attribute an den nächsten Befehl. Ein typisches Szenario ist das Aktualisieren einer Gruppe von Datensätzen über den write-Befehl, indem die IDs direkt aus der Variable bezogen werden: write res.partner $rs['ids'] -v {'email': 'test@test.de'}.

Versteckte Felder und Modelle verwalten
Für Administratoren bedeutet das beschriebene Vorgehen vor allem Freiheit bei der Pflege von Daten in Modellen, für die keine regulären Menüpunkte existieren. Da Sie technische Felder direkt ansprechen können, lassen sich unsichtbare Felder und sogar Modelle ohne Ansichten in Sekunden anpassen. Ein Befehl wie read -m res.partner -i 5 -f * zeigt Ihnen zudem sämtliche Feldwerte an und offenbart die vollständige Datenstruktur eines Datensatzes inklusive versteckter Systemfelder.

Massendaten für Testszenarien und Simulationen erstellen
Falls Sie für Simulationen oder Testszenarien schnell eine größere Anzahl an Datensätzen benötigen, bietet das Odoo Terminal eine intuitive Skriptlogik. Anstatt jeden Datensatz einzeln über die Weboberfläche anzulegen, nutzen Sie eine einfache Schleife, um automatisch viele Records zu erstellen. Der Befehl for ($i = 0; $i < 10; $i += 1) { create -m res.partner -v {name: 'Testkunde ' + $i} } erzeugt innerhalb von Sekunden zehn neue Partner-Datensätze.

Navigation und kontextsensitive Variablen
Die tägliche Navigation innerhalb von Odoo lässt sich ebenfalls durch das Terminal optimieren. Module können mit dem Befehl upgrade -m mein_modulname direkt aktualisiert werden, was den zeitaufwendigen Weg über die App-Liste erspart. Besonders hilfreich sind dabei die kontextsensitiven Variablen. Die Platzhalter $$RMOD und $$RID erkennen automatisch das Modell und die ID des Datensatzes, den Sie gerade im aktiven Browser-Tab betrachten. Ein Befehl zur schnellen Namensänderung lässt sich somit universell formulieren: write $$RMOD $$RID {'name': 'Neuer Name'}. Zudem können Sie mit dem Befehl view -m sale.order sofort in die Ansicht eines Modells springen, was das Terminal zu einer dynamischen Ergänzung der regulären Navigation macht.


Routineaufgaben mit Aliases automatisieren
Um Routineaufgaben dauerhaft zu beschleunigen, können Sie Aliases definieren, die komplexe Befehlsketten hinter kurzen Kürzeln verbergen. Ein Alias für die Suche nach Entwürfen von Verkaufsaufträgen könnte beispielsweise so definiert werden: alias -n drafts -c "search sale.order -d [['state', '=', 'draft']]". Sobald dieser Alias gespeichert ist, genügt die Eingabe des Wortes „drafts“. Hierbei ist es wichtig zu beachten, dass Aliases standardmäßig immer nur für die jeweilige Odoo-Instanz gespeichert werden. Wenn Sie jedoch einen gemeinsamen Alias für alle Ihre Odoo-Instanzen nutzen möchten, können Sie diesen über die „Init Commands“ in den Einstellungen der Erweiterung festlegen. Diese Befehle werden bei jedem Start des Terminals automatisch geladen und stehen Ihnen somit überall zur Verfügung.

Getting Started: Installation und Konfiguration von Odoo Terminal
Die Installation des Odoo Terminals erfolgt unkompliziert über die offiziellen Erweiterungs-Stores Ihres Browsers. Suchen Sie im Chrome Web Store oder in den Firefox-Add-ons nach dem Begriff „OdooTerminal“ und wählen Sie die Erweiterung von Alexandre Díaz/Tardo.
Nach der Installation wird das Terminal automatisch aktiviert, wenn im Browser eine Odoo-Instanz besucht wird. Dies wird über das Icon der Erweiterung symbolisiert, da dieses dann die aktuelle Odoo-Version anzeigt. Der standardmäßige Aufruf des Terminals erfolgt über die Tastenkombination CTRL + , (Komma) oder durch einen Klick auf das Icon. In den Einstellungen der Erweiterung (Rechtsklick auf das Symbol) haben Sie die Möglichkeit, diesen Shortcut individuell anzupassen. Dafür kann einfach unter „Shortcuts“ eine beliebige Kombination für den Befehl toggle_term angegeben werden.
Für einen vollständigen Überblick über alle verfügbaren Befehle und die korrekte Syntax sollten Sie nach dem ersten Start den Befehl „help“ in die Konsole eingeben, wodurch eine technische Dokumentation mit Erläuterungen zu allen verfügbaren Kommandos und Systemvariablen geöffnet wird. Zudem kann zu jedem Einzelbefehl mithilfe von help *Befehl* (z.B. help search) eine detaillierte Dokumentation aufgerufen werden.
Odoo Terminal als leistungsstarkes Werkzeug für Experten
Zusammenfassend lässt sich sagen, dass das Odoo Terminal eine leistungsfähige Unterstützung für all jene darstellt, die die Business-Software technisch betreuen oder administrative Korrekturen vornehmen müssen. Es ist jedoch ausdrücklich kein Werkzeug für Anwender ohne fundierte Kenntnisse der Odoo-Architektur. Da die Erweiterung prozessuale Sicherheitsmechanismen der grafischen Oberfläche umgeht, liegt die Verantwortung für die Datenintegrität vollständig bei Ihnen. Wenn Sie jedoch über die nötige Expertise verfügen, bietet das Odoo Terminal viele interessante Möglichkeiten, um alltägliche Workflows zu verbessern und einen tieferen Zugriff auf Odoo zu gewährleisten.