Den Wikiartikel kennst Du, oder ? http://wiki.ubuntuusers.de/ERP Gruss
Dieser Artikel wird momentan von orgel erstellt. Als Fertigstellungsdatum wurde der 31.12.2011 angegeben.
Achtung: Insbesondere heißt das, dass dieser Artikel noch nicht fertig ist und dass wichtige Teile fehlen oder sogar falsch sein können. Bitte diesen Artikel nicht als Anleitung für Problemlösungen benutzen!
OpenERP
ist ein modular aufgebautes Framework, ursprünglich hieß es TinyERP, es wurde komplett überarbeitet und unter der AGPL Lizenz veröffentlicht. Mit Hilfe von über 900 Modulen werden unter anderem im Unternehmensumfeld die Aufgaben der Bereiche Warenwirtschaft, Finanzbuchhaltung, Lagerhaltung, Produktion, Projektverwaltung und Customer-Relationship-Management (CRM) abgedeckt.
OpenERP ist eine Client Server Lösung welch in Python geschrieben ist und PostgreSQL als Datenbank nutzt. Dokumente können mit LibreOffice für Vorlagen erstellt oder unter WebDAV als normales Dokument abgelegt werden.
Module:
Basismodul: Kunden-, Lieferanten und Mandantenstammdaten.
Produkte: Preislisten, Artikelstammdaten und Einheitenverwaltung für Einkauf und Verkauf
Verkauf: Angebotsverfolgung und Auftragsverwaltung.
Einkauf: Beschaffung organisieren.
Finanzen: Rechnungen sowie Gutschriften, Kontenrahmenverwaltung, SKR03, Kostenstellen, Voranmeldungen, Berichte und Zahlungsabgleich
Kundenmanagement: Umfangreiche Helpdesk-Funktion mit E-Mail-Empfang, Kontakthistorie, Verkaufschancen, Serien-E-Mails, SMS-Versand und Anschreiben
Helpdesk Ticket-System: Automatischer E-Mail-Eingang, Regel-Definitionen, Terminierung und E-Mail-Antworten
Projektverwaltung: Stundenerfassung für jedes Projekt, Rechnungserstellung für die Projektstunden, Gantt-Diagramm, Projekte mit sehr vielen Unterprojekten und Aufgaben
Lagerverwaltung: Firmen Lager, Kundenlager, Buchung aller Materialbewegungen
Produktion: Produktionsstätten festlegen, Rüstzeiten, Arbeitspläne, Auslastung, Kosten und Beschaffungen planen
Shop-Software: osCommerce, Joomla!VirtueMart (Joomla!-Erweiterung), eZ Publish, Magento
sowie 900 weitere Module, Kontenrahmen und Länderspezifische Installationen
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
Zuerst muss ein Systembenutzer eingerichtet werden. Dieser Benutzter hat nur zugriff auf das Verzeichnis /opt/openerp und gehört der Gruppe openerp an. Dieser Benutzer kann sich nicht auf dem Rechner einloggen und hat keinen Shell zugriff außer auf /bin/false.
sudo adduser --system --home=/opt/openerp --group openerp
PostgreSQL wird mit folgendem Befehl installiert.
sudo apt-get install postgresql
Zunächst muss man zum postgres Benutzer wechseln, damit man die notwendigen Rechte hat um die Datenbank zu konfigurieren.
sudo su - postgres
Als nächstes legt man einen neuen Datenbankbenutzer an, dieser Benutzer ermöglicht OpenERP den zugriff auf PostgreSQL um Datenbanken zu erstellen und zu löschen. Das Passwort für den Benutzer wird später noch für die Konfiguration des OpenERP Servers benötigt.
createuser --createdb --username postgres --no-createrole --pwprompt openerp
Enter password for new role: ******** Enter it again: ******** Shall the new role be a superuser? (y/n) y
Danach gibt man exit ein um PostgreSQL zu verlassen.
exit
Die folgenden Python Bibliotheken werden benötigt für den Serverbetrieb.
sudo apt-get install python python-psycopg2 python-reportlab \ python-egenix-mxdatetime python-tz python-pychart python-mako \ python-pydot python-lxml python-vobject python-yaml python-dateutil \ python-pychart python-pydot python-webdav
Wenn man auch mit dem Web-Clienten arbeiten möchte, sollte man noch folgende Bibliotheken installieren.
sudo apt-get install python-cherrypy3 python-formencode python-pybabel \ python-simplejson python-pyparsing
Man lädt mit wget den Code für den Server und den Web Client in das eigene Home Verzeichnis herunter. Man sollte sicher stellen das es sich um die neueste Version von OpenERP handelt welche zu diesem Zeitpunkt die Version 6.0.2 ist. Diesen kann man von der OpenERP Downloadseite
herunterladen.
wget http://www.openerp.com/download/stable/source/openerp-server-6.0.2.tar.gz
wget http://www.openerp.com/download/stable/source/openerp-web-6.0.2.tar.gz
Als nächstes wechselt man nach /opt/openerp und entpackt dort die beiden Archive.
cd /opt/openerp sudo tar xvf ~/openerp-server-6.0.2.tar.gz sudo tar xvf ~/openerp-web-6.0.2.tar.gz
Danach werden die Verzeichnis und Datei Rechte an den Benutzer und die Gruppe openerp übergeben.
sudo chown -R openerp: *
Der einfachheit halber kann man die beiden Verzeichnisse kopieren und umbenennen in server und web. Wenn später ein Update durchgeführt wird muss man dann nicht jedesmal die Konfigurations Dateien und Boot Skripte abändern, so bleiben auch die vom Benutzer installierten Module und Berichte erhalten.
sudo cp -a openerp-server-6.0.2 server sudo cp -a openerp-web-6.0.2 web
So kann man z.B. bei einem Update auf Version 6.0.3 die Tar Archive wieder nach /opt/openerp/ entpacken und in die Verzeichnisse server sowie web kopieren. So dass die modifizierten Dateien überschrieben werden und bei Bedarf benutzerdefinierte Module, Berichtsvorlagen beibehalten werden. Sobald feststeht das, dass Upgrade stabil läuft, kann man die ältere Version 6.0.2 Verzeichnisse entfernen, wenn man das möchte.
Eine Vorlage für die Konfigurationsdatei findet man unter /opt/openerp/server/doc/openerp-server.conf allerdings sollte man diese an seine begebenheiten anpassen. Eine vorgefertigte Konfigurations Datei findet man hier: openerp-server.conf. Diese Datei kopiert man nach /etc/ und ändert die Zugriffs und Verzeichnisrechte mit folgenden Befehlen.
sudo chown openerp:root /etc/openerp-server.conf sudo chmod 640 /etc/openerp-server.conf
Das einzige was man noch in einem Texteditor anpassen muss ist db_password = ******** dieses sollte mit dem Passwort vom openerp Benutzer der PostgreSQL Datenbank übereinstimmen. Danach kann man mit dem anschließenden Befehl den Server einmal zum Testen starten.
/opt/openerp/server/bin/openerp-server.py --config=/etc/openerp-server.conf
Im Moment läuft es noch nicht richtig weil es unter dem normalen Benutzer gestartet wurde und nicht mit dem openerp Benutzer welcher zugriff auf den PostgreSQL Server hat. Danach drückt man einfach STRG + C zum Beenden des Servers.
Für den letzten Schritt muss man ein start-up und shut-down Skript für das automatisierte Starten und Stoppen des Servers mit dem richtigen Benutzer erstellen. Ein Beispiel Skript kann man hier openerp-server herunterladen. Diese Datei kopiert man dann nach /etc/init.d/openerp-server und ändert die Zugriffs und Verzeichnisrechte mit folgenden Befehlen.
sudo chmod 755 /etc/init.d/openerp-server sudo chown root: /etc/init.d/openerp-server
In der Konfigurationsdatei gibt es einen Eintrag für die Server-Log-Datei. Man muss erst das Verzeichnis erstellen, so dass der Server Protokollieren kann und es auch beschreibbar durch den openerp Benutzer machen:
sudo mkdir /var/log/openerp sudo chown openerp:root /var/log/openerp
Den OpenERP Server startet man nun mit folgendem Befehl:
sudo /etc/init.d/openerp-server start
Nun sollte man mit in der Logdatei sehen können das der Server gestartet wurde. Wenn dabei ein Fehler ausgegeben wird sollte man die vorherigen schritte noch einmal überprüfen. Testweise kann man jetzt den OpenERP Klienten starten um zu sehen ob die Verbindung vom Klienten zu Server geht.
less /var/log/openerp/openerp-server.log
Den Server stoppt man mit folgendem Befehl:
sudo /etc/init.d/openerp-server stop
Wenn bis hier her alles funktioniert ist der letzte schritt das Start- und Stoppskript mit dem Rechner automatisch zu starten. Damit das geschieht gibt man dann folgenden Befehl ein.
sudo update-rc.d openerp-server defaults
Danach sollte man den Rechner neu starten um zu sehen das OpenERP läuft. In der Konsole kann man jetzt ps aux | grep openerp eingeben, dabei sollte folgende Zeile sthen:
openerp 708 3.8 5.8 181716 29668 ? Sl 21:05 0:00 python /opt/openerp/server/bin/openerp-server.py -c /etc/openerp-server.conf
Das zeigt, dass der Server läuft. Natürlich kann man die Log-Datei einsehen oder auch den GTK Klienten verwenden.
sudo chown openerp:root /etc/openerp-web.conf sudo chmod 640 /etc/openerp-web.conf
sudo chmod 755 /etc/init.d/openerp-web sudo chown root: /etc/init.d/openerp-web
sudo /etc/init.d/openerp-web start
sudo /etc/init.d/openerp-web stop
sudo update-rc.d openerp-web defaults
sudo apt-get install apache2
sudo a2enmod ssl proxy_http headers rewrite
cd mkdir temp cd temp
openssl genrsa -des3 -out server.pkey 1024
openssl rsa -in server.pkey -out server.key
openssl req -new -key server.key -out server.csr
Country Name (2 letter code) [AU]: State or Province Name (full name) [Some-State]: Locality Name (eg, city) []: Organization Name (eg, company) [Internet Widgits Pty Ltd]: Organizational Unit Name (eg, section) []: Common Name (eg, YOUR name) []: Email Address []: Please enter the following ‘extra’ attributes to be sent with your certificate request A challenge password []: An optional company name []:The Client’s Company
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
sudo chown openerp:root server.crt server.key sudo chmod 640 server.crt server.key
sudo mkdir /etc/ssl/openerp sudo chown openerp:root /etc/ssl/openerp sudo chmod 710 /etc/ssl/openerp sudo mv server.crt server.key /etc/ssl/openerp/
In der Datei /etc/apache2/sites-available/openerp-ssl
<VirtualHost *:443>
SSLEngine on
SSLCertificateFile /etc/ssl/openerp/server.crt
SSLCertificateKeyFile /etc/ssl/openerp/server.key
ProxyRequests Off
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyVia On
ProxyPass /webdav/ http://127.0.0.1:8069/webdav/
<Location /webdav/ >
ProxyPassReverse /webdav/
<Limit OPTIONS PROPFIND GET REPORT MKACTIVITY PROPPATCH PUT MOVE COPY DELETE LOCK UNLOCK>
Order Deny,Allow
Allow from all
Satisfy Any
</Limit>
</Location>
ProxyPass / http://127.0.0.1:8080/
<location / >
ProxyPassReverse /
</location>
RequestHeader set "X-Forwarded-Proto" "https"
# Fix IE problem (httpapache proxy dav error 408/409)
SetEnv proxy-nokeepalive 1
</VirtualHost>
sudo a2ensite openerp-ssl
RewriteEngine on
RewriteCond %{SERVER_PORT} ^80$
RewriteRule ^(.*)$ https://%{SERVER_NAME}$1 [L,R] In der Datei /etc/openerp-server.conf
xmlrpc = True
xmlrpc_interface = 127.0.0.1
xmlrpc_port = 8069
netrpc = True
netrpc_interface = 127.0.0.1
netrpc_port = 8070
xmlrpcs = True
xmlrpcs_interface =
xmlrpcs_port = 8071
secure_pkey_file = /etc/ssl/openerp/server.key
secure_cert_file = /etc/ssl/openerp/server.crt
[webdav] enable = True vdir = webdav
In der Datei /etc/openerp-web.conf
# Some server parameters that you may want to tweak
server.socket_host = “127.0.0.1″
# Set to True if you are deploying your App behind a proxy
# e.g. Apache using mod_proxy
tools.proxy.on = True
# If your proxy does not add the X-Forwarded-Host header, set
# the following to the *public* host url.
tools.proxy.base = ‘https://your-ip-or-domain’
# Set to false to disable CSRF checks
tools.csrf.on = False
sudo service openerp-server restart sudo service openerp-web restart sudo service apache2 restart
https://ip-oder-domain/webdav/DB_NAME/calendars/users/USERNAME/c/CALENDAR_NAME
Diese Revision wurde am 5. September 2011 16:13 von frustschieber erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen:
Anwendungen, ERP, Python, Warenwirtschaft
2004 – 2012 ubuntuusers.de • Einige Rechte vorbehalten