Moin ERPNext Gemeinde. Ich beschäftige mich jetzt den zweiten Tag mit ERPNext (auf der Suche nach einem geeigneten und erweiterbaren ERP System) und empfinde den Einstieg doch noch ein wenig holprig.
Kurz zu meinem/unseren Hintergrund. Als DevOps Consultants, überwigend im Enterprise Umfeld, schöpfen wir aus einem doch sehr umfangreichen Portfolio an sowohl Entwickler als auch Sysadmin Knowhow. Unser Kerngeschäft besteht aus dem Aufbau von LandingZones, Cloud Migrationen und Automatisierung von Prozessen. Gerade im Bereich wiederkehrender administrativer Aufgaben setzen wir auf separation of cocerns, least privileges und einen hohen Automatisierungsgrad. Und genau da komme ich gleich zu den Themen, die mir gerade bei ERPNext das Leben schwer machen.
Wir haben uns bereits Odoo intensiv angeschaut, sowohl was die Erweiterbarkeit angeht (die bei Odoo meiner Meinung nach sehr gut gegeben ist), als auch was den Betrieb und die Updatefähigkeit angeht.
Was mir bei Odoo besonders misfällt ist die stellenweise schlecht implementierte und hart gecoded Mandatenfähigkeit und die Notwendigkeit, zu umfangreiche Berechtigungen auf das DBMS (min. CREATEDB) gewähren zu müssen (oder auf dreckige Workarounds zurück greifen zu müssen). Auch das Domain<->DB Mapping, die Backups und Updates sind ein grauen (ich möchte in diesem Kontext jetzt nicht weiter auf die Details eingehen, gebe bei Interesse aber gerne tiefere Einblicke). Zugegeben, haben wir uns bisher nur mit der Community Edition rumgeschlagen, ich kann also nicht mit Bestimmtheit sagen, ob es in den Enterprise Addons noch genauso aussieht, dem Odoo Addon Konzept folgend, vermute ich aber, dass ich mit der Enterprise eher zusätzliche Software Funktionen bekomme, sich aber am Kern nicht weiter etwas ändert.
Was erwarte ich in erster Linie von einer ERP Software:
- ein ausgefeiltes backend Framework mit ORM (es darf auch auf Basis etablierter Tools wie zB. Django implementiert sein)
- ein ebenso ausgefeiltes und etabliertes frontendframework
- Kommunikation zwischen backend und frontend gerne auf basis von REST
- Usermanagement auf Basis gängiger Standards (OAuth, OpenID, LDAP)
- Konfigurations über API Calls (auch hier gerne wieder REST)
- Extension und Decorator Patterns für das schaffen von Erweiterungen, ohne Änderungen am Core vornehmen zu müssen (Update Fähigkeit)
- Database Migrations (Erweiterung der DB durch Extensions und Decorators, Migration bei Version upgrades)
- Backup und recovery jobs (gerne über cli commands)
Bisher tue ich mich mit dem Einstieg noch ein wenig schwer. Die Frappe Doku (zumindest alles was ich bisher gefunden habe), lässt eine einfache Schritt für Schritt Anleitung zur Installation vermissen.
Ich bin vielmehr angehalten, über bench eine gesamte Entwicklungsumgebung einzurichten. Und auch bei ERPNext fehlt mir (wie schon bei Odoo) eine Möglichkeit, Datenbanken von Hand anzulegen und die entsprechenden Credentials einfach nur zu übergeben. Bas bench “new-site” command erwartet immer einen Root User Access auf die Datenbank. Es scheint mir ein wenig zu viel Magick in die Bench Kommandos (und damit in eine Blackbox) geflossen zu sein, um eine unheimlich komfortable Entwicklungs Umgebung zu bieten, mir fehlt es aber Gradlinigkeit und Granularität für einen produktiven Betrieb.
Wie halten es die anderen Mitglieder in dier hiesigen Community mit dem Betrieb ihrer ERPNext Instanzen? Wie sichert Ihr im besonderen Euren Systeme ab, wenn diese am public Internet hängen? Immerhin reden wir hier ja nicht bloß über eine Wordpress Website, sondern auch von Datenschutz relevaten Unternehmensdaten.
Ich würde mich über entsprechendes Input und auch über Links zu mir vielleicht bisher entgangenen Dokus freuen.