rulesUI – Akeneo Enterprise Extension

basecom

Die Rules Engine ist ein elementares Feature der Akeneo Enterprise Edition. Sie ermöglicht das Ausführen automatischer Aktionen, sobald die definierten Bedingungen erfüllt sind. Leider war die Nutzung bisher recht umständlich, da die Bedingungen und die damit verbundenen Aktionen (sogenannte Rules bzw. Regeln) bisher mit manuell erstellten YAML-Dateien festgelegt werden mussten. Um die Arbeit mit dem Open-Source-PIM noch effizienter zu gestalten, haben wir eine grafische Benutzeroberfläche für die Rules Engine entwickelt. Das zeitintensive Pflegen und Bearbeiten von YAML-Dateien ist damit nicht mehr nötig.

Was ist die Akeneo Enterprise Edition?

Akeneo ist in zwei Versionen erhältlich: in der Community Edition und in der Enterprise Edition. Die kostenpflichtige Enterprise Edition basiert auf der kostenlosen Open-Source-Community-Edition und bringt neben dem Herstellersupport weitere nützliche Features mit. Das erweiterte Rechtemanagement ermöglicht es zum Beispiel größeren Unternehmen oder solchen mit vielen differenzierten Benutzern, nur Komponenten auszugeben, die der jeweilige Benutzer auch wirklich benötigt.

Heute möchten wir uns jedoch einem elementaren, aber häufig unterschätzten Feature der Enterprise Edition – der Rules Engine – widmen

Enterprise Only Features

Akeneo Rules Engine

Akeneo selbst beschreibt die Rules Engine wie folgt: „Definieren Sie Ihre eigenen Business-Regeln! Klassifizieren, verknüpfen und kategorisieren Sie Ihre Produkte anhand ihrer Attribute automatisch und erweitern Sie die Rules Engine einfach um Ihre individuellen Aktionen und Auslöser.“

Hinter dieser eher werbetextlichen Beschreibung verbirgt sich ein mächtiges Feature, mit dem alle Funktionen innerhalb von Akeneo automatisiert werden können. Eine Rule besteht immer aus Bedingungen und Aktionen. Bedingungen können miteinander verknüpft werden und selbstverständlich auch mehrere Aktionen nach sich ziehen. Die folgende Rule beschreibt die Prüfung auf die Produktfamilie „camcorders“ und das Wort „Canon“ im Namen. Sollte diese Bedingung erfüllt sein, wird diese Rule das Attribut „auto_focus_lock“ automatisch auf „true“ setzen.

Regeln akeneo

Rules können natürlich wesentlich komplexer sein und selbst Texte automatisiert anhand technischer Attribute zusammenstellen. Wie alle Funktionen in Akeneo kann auch die Rules Engine sehr leicht erweitert werden. Aktionen können durch Entwickler definiert und als Plug-in bereitgestellt werden. Eine Einsatzmöglichkeit ist die Kommunikation als WebHook mit weiteren Systemen, z. B. der Projektmanagement-Software JIRA. Sobald ein Produkt gespeichert wird, könnte die entsprechende Rule einen vollautomatischen Workflow starten.

So nützlich die Rules auch sind, so aufwändig ist in der Regel ihre Erstellung. Leider liegt für die Rules-Verwaltung von Haus aus keine grafische Benutzeroberfläche vor. Die Rules müssen über YAML-Dateien importiert werden.

json pattern

Voraussetzung für das Erstellen einer Rule sind also nicht nur tiefgreifende Kenntnisse des Systems und viel kostenbare Zeit, sondern auch YAML-Kenntnisse – sowie Zugriffsrechte auf die Importfunktionen des Systems. Viele Akeneo-Enterprise-Kunden kommen in ihren Systemen schnell auf 100–300 Rules, wobei das Anlegen einer einzigen Rule, je nach Komplexität, mehrere Stunden benötigen kann.

Abhilfe schafft hier das kostenlose Modul zur Verwaltung der Akeneo Rules Engine von basecom: die rulesUI.

Die Akeneo Extension von basecom: rulesUI

Die basecom-Erweiterung orientiert sich am Akeneo-Standard und erweitert zunächst unauffällig die bekannte Übersicht über die installierten Rules. Unter den Aktionen auf der Seite findet sich nun neben dem aus Version 1.7 bekannten Button „Execute rules“ der neue Button „Add new rule“. Dieser öffnet ein neues Dialogfenster, das das Erstellen einer neuen Rule direkt in Akeneo erlaubt. Zusätzlich enthält jede Zeile nun eine Aktion, um die ausgewählte Rule direkt zu bearbeiten.

akeneo Backend

Eine neue Rule anlegen

Für das Anlegen einer Rule sind damit keine YAML-Kenntnisse mehr erforderlich. Und auch auf das Importieren kann verzichtet werden. Eine Rule besteht aus einer oder mehreren Bedingungen und einer oder mehreren Aktionen, wobei die ruleUI die mögliche Auswahl an Bedingungen bereits dem Attribut entsprechend aufbereitet und unzulässige Bedingungen direkt ausblendet. So können Operatoren für ein Textfeld selbstverständlich nicht auf eine Checkbox angewendet werden.

akeneo Backend edit rule

Eine Rule bearbeiten

In der Liste der bestehenden Regeln befindet sich am Ende jeder Zeile ein neuer Button. Über diesen „Edit“-Button können bereits erstellte Rules bearbeitet werden. Beim Speichern der Rule wird im Hintergrund derselbe Prozess wie beim Import der Rule angestoßen. Im Klartext bedeutet dies, dass die Rule dieselbe Überprüfung durch Akeneo Enterprise durchläuft, bevor sie aktiv wird, wie eine importierte Regel. Sie erhalten also dieselbe Sicherheit wie beim Importieren einer Rule über den herkömmlichen Weg. Darüber hinaus können so gespeicherte Rules wie gewohnt im YAML-Format exportiert werden.

akeneo Backend Edit rule

Unser Fazit

Unsere ersten Erfahrungen mit der rulesUI zeigen, dass das Erstellen einer Rule über die Extension im Vergleich zur herkömmlichen Methode schnell mehrere Stunden an Aufwand einsparen kann. Natürlich richtet sich das Zeit-Einsparpotential nach dem Komplexitätsgrad der benötigten Regeln sowie dem Skill-Level des Bearbeiters. Auch das Einsparpotential in Bezug auf die Kosten ist individuell. Zwar lassen sich auf den ersten Blick sicher Kosten für einen externen Dienstleister einsparen, der bisher mit der Anpassung der Regeln betraut war, jedoch ist dieser durch seine tägliche Arbeit mit Akeneo mitunter schneller als die Insourcing-Alternative im eigenen Unternehmen.

Falls Sie Fragen oder Hinweise zur rulesUI Extension haben oder eine Integration in Ihr Akeneo Enterprise erwägen, zögern Sie nicht, uns zu kontaktieren. Als Akeneo Partner der ersten Stunde stehen wir Ihnen bei Ihrem aktuellen oder dem nächsten Akeneo-Projekt gerne zur Seite.

Über den Autor

Über den Autor

Steffen Krüger leitet bei basecom die Business Unit Shopware. Er ist bereits seit 2008 ein Teil von basecom und der richtige Ansprechpartner für Ihr Onlineprojekt.

Steffen Krüger Leitung Business Unit Shopware