SQL Ledger

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Installation von Programmen

  2. Starten von Programmen

  3. Ein Terminal öffnen

  4. mit Root-Rechten arbeiten

  5. Einen Editor nutzen

Inhaltsverzeichnis
  1. Installation
  2. Absicherung der SQL Ledger Installation
  3. Erstellen eines separaten Postgres-Nutzers...
  4. Alternative und offizielle Installation vo...
  5. Konfiguration von SQL Ledger
  6. Der erste Login
  7. Fehlerbehebung und Problemlösung
  8. Aktualisierungen
  9. Links

SQL Ledger 🇬🇧 ist ein sehr umfassendes ERP-System, welches zahlreiche Funktionen zur Automatisierung und Integration von Unternehmensprozessen bietet. Unternehmensdaten werden in einer PostgreSQL-Datenbank gespeichert und über die Skriptsprache Perl für den Zugriff per Webbrowser aufbereitet. Das System ist browserbasierend, jedoch können auch textbasierte Konsolenbrowser wie beispielsweise Lynx verwendet werden. Bezüglich der Finanzbuchhaltung basiert SQL Ledger auf doppelter Buchführung und bietet für den deutschen Markt den Standardkontenrahmen SKR 03. Das System eignet sich insbesondere für Intranets mit mehreren Benutzern und wurde laut offizieller FAQ nicht entworfen direkt im Internet eingesetzt zu werden.

SQL Ledger wird von der kanadischen Firma DWS Systems entwickelt und wird einmal als GPL-Version als auch in einer kostenpflichtigen Enterprise Edition vermarktet, die zusätzliche Funktionalität bietet. Ein unabhängiger Zusammenschluss von SQL Ledger Consultants unterstützt die Verbreitung des Systems und konzentriert sich dabei weitgehend auf den Aspekt der freien Software, sprich der GPL-Version. Dabei hat sich auch ein eigener Fork mit dem Codenamen "Enhanced SQL Ledger" entwickelt und es gibt Angebote wie Shopsysteme (LedgerCart) 🇬🇧.

SQL Ledger wird unter anderem für Debian und Ubuntu in Launchpad paketiert 🇬🇧.

Installation

SQL Ledger steht als Tarball unter http://www.sql-ledger.com 🇬🇧 zum Download bereit und es gibt die Möglichkeit eines weitgehend automatisierten Installationskripts, welches in Perl programmiert wurde. Vorab sollte man folgende Pakete noch installieren.

Paketliste zum Kopieren:

sudo apt-get install ssh acpid apache2 postgresql libdbi-perl git-core postfix texlive texlive-lang-german libdbd-pg-perl mailutils gitweb 

Oder mit apturl installieren, Link: apt://ssh,acpid,apache2,postgresql,libdbi-perl,git-core,postfix,texlive,texlive-lang-german,libdbd-pg-perl,mailutils,gitweb

Absicherung der SQL Ledger Installation

cd /var/www/html/sql-ledger  
sudo chown -hR www-data.www-data users templates css spool 

Erstellen eines separaten Postgres-Nutzers

sudo su postgres
createuser -d -P sql-ledger 

Die beiden folgenden Fragen kann man mit "n" beantworten, man sollte sich aber das Passwort für die Rolle merken.

Danach sollte man noch mit dem Befehl

exit 

zu seinem normalen Benutzer zurück kehren.

Alternative und offizielle Installation von SQL Ledger mit Hilfe des offiziellen Perlskripts

sudo mkdir /var/www/sql-ledger/
cd /var/www/sql-ledger
sudo wget http://sql-ledger.com/source/setup.pl
sudo perl setup.pl 
Checking for latest version number ....
www.sql-ledger.com ... ok

SQL-Ledger ERP Installation

(i)nstall 3.0.4 (from Internet)
(d)ownload 3.0.4 (no installation)
	 
Enter: i

Enter httpd owner [] : www-data
	 
Enter httpd group [] : www-data

Status

Downloading sql-ledger-3.0.4.tar.gz ....
www.sql-ledger.com .... ok
Decompressing sql-ledger-3.0.4.tar.gz ... done
Unpacking sql-ledger-3.0.04.tar ... done
cleaning up ... done
 
This is a new installation.
 
Webserver directives were written to
 
/etc/apache2/sql-ledger-httpd.conf

Please add
 
# SQL-Ledger
Include /etc/apache2/sql-ledger-httpd.conf
 
to your httpd configuration file and restart the web server.
 
Display README (Y/n) : n

Wie in der Ausgabe andeutet, muss man noch Konfigurationen an den Webserverdirektiven vornehmen. Dazu öffnet man die Datei /etc/apache2/apache2.conf mit einem Editor[5] mit Root-Rechte[4] und fügt hinzu:

# SQL-Ledger
Include /etc/apache2/sql-ledger-httpd.conf

Konfiguration von SQL Ledger

Wurde SQL Ledger lokal auf dem Rechner installiert, sollte man sich nun über http://localhost/sql-ledger/admin.pl in die Administrationsoberfläche einloggen können. Ein Administrator-Passwort ist für den ersten Login nicht gesetzt. Man kann den Bildschirm durch einfachen Klick auf "Login" überspringen. Eine neue Firma (Mandanten) legt man durch Klick auf "Add Dataset" an. Das folgende Formular kann man wie folgt ausfüllen:

Host -> localhost bzw. die IP-Adresse des PostgreSQL-Servers
Port -> 5432
User -> Postgresnutzer, wie unter "Erstellen eines separaten Postgres-Nutzers" angegeben
Passwort -> wie unter "Erstellen eines separaten Postgres-Nutzers" angegeben
Connect to -> template1

Wenn alles geklappt hat, kann man im folgenden Bildschirm einen Namen für seine Datenbank (Dataset) sowie einen Firmennamen (Company) vergeben und schon Grundeinstellungen treffen.

Der erste Login

Sobald man die erste Firma eingerichtet hat, kann man sich unter http://localhost/sql-ledger/login.pl mit den Zugangsdaten "admin" - "admin" einloggen. Neue Benutzer kann man über die HR- (Human Resource) Funktion einrichten.

Fehlerbehebung und Problemlösung

Ein häufiger Fehler ist, dass beim Login die Perlskripte vom Server nicht ausgeführt werden und nur zum Download angeboten werden. Hier können die Ursachen wie folgt sein:

# a2enmod cgi

Falls der deutsche SKR03-Kontenrahmen wegen einer fehlenden Kodierung nicht initialisiert werden kann, kann man auf die entsprechende Kodierung angepasste SQL-Skripte von folgender Adresse herunterladen:

https://github.com/Tekki/sql-ledger/blob/master/sql/

Bei der Testinstallation hat das Installationsskript die Webverzeichnisse nicht richtig eingetragen. Nachfolgend ein angepasster Eintrag fuer die apache2.conf, der auf einem virtuellen Server sowie einem Desktopsystem getestet wurde.

Alias /sql-ledger /var/www/html/sql-ledger/
<Directory /var/www/html/sql-ledger>
  AllowOverride All
  AddHandler cgi-script .pl
  Options ExecCGI Includes FollowSymlinks
  Order Allow,Deny
  Allow from All
</Directory>

<Directory /users>
  Order Deny,Allow
  Deny from All
</Directory>

Wenn man die admin.pl aufruft und die Fehlermeldung Database Driver missing! erhaelt, muss man das Paket libdbd-pg-perl aus den Universequellen nachinstallieren. Beim ersten Aufruf kann man das Passwort selbst setzen.

Aktualisierungen

Die jeweilige README-Datei in "SQL Ledger" gibt Hinweise bezüglich der Aktualisierung auf neue Version. Um den laufenden Betrieb zu sperren, ruft man die Administrationsoberfläche (admin.pl) auf und wählt "Lock System". Dies verhindert das Hinzufügen neuer Daten und sperrt das System. Als nächster Schritt reicht es mit Hilfe des tar-Befehls die neue Version über der alten Installation zu entpacken.

Weitere Hinweise bietet das Unterverzeichnis "doc". Die Datei UPGRADE in diesem Verzeichnis sollte dringends gelesen werden.

Im Januar 2016 erfolgte ein Versionssprung von 3.0 auf 3.2. Auch hier reicht es, den Tarball über das bestehende Verzeichnis zu entpacken, jedoch müssen für jeden Mandanten die Datenbanktabellen aktualisiert werden. Hier ist ein Login in die ERP-Software als Administrator nötig (login.pl). Es erscheint eine Meldung Upgrading to 3.2. Durch Klick auf Continue werden die Datenbanktabellen aktualisiert.