Sinnvolle Ergänzungen

Aus Lawsuit - Wiki
Wechseln zu: Navigation, Suche
Kompatibilität mit openSUSE openSUSE-Themen Weiterführende Artikel Suse.png


Einführung

Für den elektronischen Rechtsverkehr sind gem. § 5 Elektronischer-Rechtsverkehr-Bekanntmachung 2018 als Anlagen nurmehr die Formate PDF und TTIF erlaubt. Da zugleich ide Anlagengröße auf 60 MB begrenzt wurde, empfiehlt es sich, wirksame Instrumente zur Dokumenten-Nachbearbeitung vorzuhalten.



PDFsam

PDFsam ist ein kostenloses und sehr nützliches Programm zur Aufspaltung, Zusammenstellung und Formatierung von PDFs. Es findet sich als rpm-Paket unter

https://software.opensuse.org/package/pdfsam?search_term=pdfsam

und kann per 1-Klick-Installation eingebunden werden. Eine neuere Java-Version kann vom Anbieter mit folgendem Befehl heruntergeladen

> cd bin
  wget https://github.com/torakiki/pdfsam/releases/download/v4.3.4/pdfsam-4.3.4-linux.tar.gz
  tar xzf pdfsam*.tar.gz && rm pdfsam*.tar.gz
  rename pdfsam* pdfsam pdfsam*
  cd pdfsam
  wget https://upload.wikimedia.org/wikipedia/commons/a/a7/PDFsam_Basic_logo.svg

und mit diesem Desktop-Eintrag pdfsam.desktop im Verzeichnis Schreibtisch nutzbar gemacht werden:

[Desktop Entry]
Categories=Utility;TextEditor;
Comment[de_DE]=Open-Source-Anwendung zum Auftrennen und Verbinden von PDF-Dokumenten
Comment=A free open source tool to split and merge pdf documents
Encoding=UTF-8
Exec=sh /home/BENUTZER/bin/pdfsam/bin/pdfsam.sh
GenericName[de_DE]=pdfsam
GenericName=pdfsam
Icon=home/BENUTZER/bin/pdfsam/PDFsam_Basic_logo.svg
MimeType=
Name=PDFsam
Path=
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
X-DBUS-ServiceName=
X-DBUS-StartupType=
X-KDE-SubstituteUID=false
X-KDE-Username=

Teamviewer

Mit dem vielseitigen Programm Teamviewer lassen sich u.a. Verwaltungsakten bequem auf dem Tablet betrachten und können neben die Anwaltsakte gelegt werden.

cd ~/bin
wget https://download.teamviewer.com/download/linux/teamviewer.x86_64.rpm
sudo zypper in teamviewer*


Um Updates vom Teamviewer-Server installieren zu können, obwohl Teamviewer seine Softwarepakete nicht signiert, geben sie anschließend folgende Ausnahmeregelung für zypper ein:

sudo zypper modifyrepo --gpgcheck-allow-unsigned-package teamviewer


moneyplex - Homebanking

Lawsuit kann aus der Buchführung zwar alle Überweisungen als QR-Code (z.B. für Handy-Bank-Apps), im gängigen SEPA-Format oder als CSV-Datei ausgeben. Bei größerem Anfall an täglichen Überweisungen in der Kanzlei lohnt sich jedoch die Anschaffung des kostenpflichtigen (einmalig etwa 100 EUR) Programms moneyplex, das nur in der kostenpflichtigen Version den Import der Lawsuit-CSV ermöglicht, aber dann komfortabel mit dem bei Anwälten für das beA] ohnehin schon vorhandenen Kartenlesegerät bedient werden kann, so dass die ständige Eingabe von TANs entfällt. Ob das Programm überhaupt für die eigene Kanzlei infrage kommt, lässt sich an der im OpenSUSE-Paket bereits enthaltenen kostenlosen Testversion feststellen:

sudo zypper in moneyplex-suse moneyplex-daten

Für das HBCI-Banking muss der Port 3000 geöffnet werden:

# firewall-cmd --zone internal --permanent --add-port=3000/tcp
  firewall-cmd --zone internal --permanent --add-port=3000/udp


kivitendo - Buchführung für Kapitalgesellschaften

Einführung

Lawsuit ist mit einer eigenen Buchführung für die Einnahmen-Überschuss-Rechnung ausgestattet, die für Anwälte als Freiberufler gem. § 4 Abs. 3 EStG ausreichend ist. Anders als für Einzelanwälte oder Partner in einer Partnerschaftsgesellschaft ist für Inhaber einer GmbH oder PartG GmbH jedoch demgegenüber die Buchführung nach § 4 Abs. 1 EStG iVm. §§ 6, 238 HGB HGB vorgeschrieben. Für sie empfiehlt sich unter Linux der gut gepflegte deutsche Ableger von sql-ledger, kivitendo ("einfach") aus Bonn:

Installation

  • Installation als RPM-Paket
https://software.opensuse.org/download.html?project=spins%3Ainvis%3Astable&package=kivitendo-erp

Folgendes Perl-Modul muss für den E-Mail-Versand von Rechnungen zusätzlich nachgetragen werden:

https://software.opensuse.org/download.html?project=devel%3Alanguages%3Aperl&package=perl-Email-MIME-Attachment-Stripper

Verschieben Sie das Programm, um es bei künftigen Upgrades zu erhalten, in Ihr persönliches Hauptverzeichnis und passen Sie die Berechtigungen an:

> path=~/
> sudo mv /srv/www/htdocs/kivitendo* $path/kivitendo-erp
> user=`pwd | grep -Po '(?<=\/home\/)\w+'`
> sudo chown -cR $user:users $path/kivitendo*


  • Installation als Tarball:

Alternativ können die fehlenden Pakete auch per Hand nachgeladen werden

> sudo zypper in git apache2-mod_fcgid postgresql-contrib aqbanking-tools perl-Clone perl-Config-Std perl-DBD-Pg perl-DBI perl-DateTime perl-Email-Address perl-Email-MIME perl-FastCGI perl-File-Copy-Recursive perl-JSON perl-List-MoreUtils perl-Net-SMTP-SSL perl-Net-SSLGlue perl-PDF-API2 perl-Params-Validate perl-Sort-Naturally perl-Template-Toolkit perl-Text-CSV_XS perl-Text-Iconv perl-URI perl-XML-Writer perl-YAML perl-CPAN perl-Algorithm-CheckDigits perl-GD perl-Class-XSAccessor postgresql-server perl-libwwww-perl perl-FCGI poppler-tools

Noch nicht bekannte Module werden im Apache-Server nachgetragen, insbesondere

> sudo a2enmod fcgid

Anschließend kann das aktuelle Programmrelease von

https://github.com/kivitendo/kivitendo-erp/releases

per

> git clone https://github.com/kivitendo/kivitendo-erp.git
> cd kivitendo-erp/
> git checkout `git tag -l | egrep -ve "(alpha |beta |rc)" | tail -1`

automatisch als Tarball geladen und installiert werden.

Hinweis
Der Befehl wechselt zur letzten Stable-Version, git tag -l listet alle Tags auf, das egrep wirft alle Einträge mit "alpha", "beta" oder "rc" heraus und das tail gibt davon den obersten Treffer zurück.

Sehr sinnvoll ist es, direkt im Anschluss einen eigenen Branch zu erzeugen, um bspw. seine eigenen Druckvorlagen-Anpassungen damit zu verwalten. Hierfür reicht ein simples

git checkout -b meine_eigenen_änderungen


Anpassungen

Folgende Perl-Module müssen bei beiden Formen der Installation nachgeladen werden:

> su
# perl -e shell -MCPAN
cpan[1]>install Rose::DB
cpan[2]>install Rose::DB::Object
cpan[3]>install File::MimeInfo
cpan[4]>install HTML::Restrict
cpan[5]>install Text::Unidecode
cpan[6]>install YAML
cpan[7]>quit


Prüfen Sie, ob noch weitere Module fehlen, anhand des mitgelieferten Hilfskripts

> perl ~/kivitendo*/scripts/installation_check.pl


Anschließend muss noch das Unterverzeichnis webdav von Hand angelegt werden:

> cd ~/kivitendo*
> mkdir webdav

Für einige Verzeichnisse müssen die Berechtigungen dem Browser eingeräumt werden, bei OpenSUSE ist dies der user wwwrun aus der Gruppe wwww:

> sudo chown -R wwwrun:www users spool webdav templates scripts


Folgen Sie der Anleitung für das Aufsetzen des Apache-Servers, sofern dieser nicht bereits für lawsuit eingerichtet wurde. Wechseln Sie dann wie folgt in das kivitendo-erp-Verzeichnis und laden Sie sich ein Muster der Konfigurationsdatei kivitendo-httpd.conf herunter:

> path=~/
> cd $path/kivitendo-erp/config
> wget http://iustus.eu/download/kivitendo-httpd.template

Anschließend passen Sie das Muster mit folgenden Befehlen automatisiert an Ihr Unterverzeichnis an und verschieben die so erstellte personalisierte Konfigurationsdatei in das Verzeichnis vhosts.d des Apache-Servers:

> pfad=`echo $path | sed "s/\/$//g" | sed 's/\//\\\\\//g'`
> sed "s/meinpfad/$pfad/g" kivitendo-httpd.template > kivitendo-httpd.conf
> sudo cp kivitendo-httpd.conf /etc/apache2/vhosts.d/

Ebenso verfahren Sie mit dem Task-Server-Script, mit dem wiederkehrende Aufgaben für kivitendo, wie z.B. Mahnungen, abgearbeitet werden:

> wget http://iustus.eu/download/kivitendo-task-server.template

Ändern Sie in der Datei den Eintrag "user=www-data" wie folgt:

user=wwwrun

und passen Sie die Pfade an:

> sed "s/meinpfad/$pfad/g" kivitendo-task-server.template > kivitendo-task-server.service
> sudo cp kivitendo-task-server.service /usr/lib/systemd/user/
> sudo ln -s /usr/lib/systemd/user/kivitendo-task-server.service /etc/systemd/system/

Machen Sie anschließend das Script systemd bekannt, und binden Sie es in den Boot-Prozess ein:

> sudo systemctl daemon-reload
> sudo systemctl enable kivitendo-task-server.service


Abschluss

kivitendo bringt noch eine eigene Konfigarationsdatei mit, die bei der Erstinstallation entpackt werden muss:

cp config/kivitendo.conf.default config/kivitendo.conf

Ändern Sie die Einträge unter [authentication/database] wie folgt (Passwort bitte individuell anpassen):

host     = localhost
port     = 5432
db       = kivitendo_auth
user     = kivitendo
password = meinPasswortfuerkivitendo

Sie können das Passwort statt als Plaintext auch in einer MD5-Verschlüsselung setzen. Kodieren Sie es dafür bitte mit der Seite

https://hashgenerator.de/

und ersetzen Sie unten in der /var/lib/pgsql/data/pg_hba.conf die Einträge "passwort" jeweils durch "md5".

Weiter unten in den Einstellungen für [task-server] ergänzen Sie den Eintrag:

run_as = wwwrun 

Zu [testing/database] lauten die Einträge:

host               = localhost
port               = 5432
db                 = test
user               = kivitendo
password           = meinPasswortfuerkivitendo
template           = template1
superuser_user     = postgres
superuser_password = meinPasswortfuerpostgres


Passen Sie unter YaST im Abschnitt

> Benutzer- und Gruppenverwaltung > Filter festlegen > Filter:Systembenuter

den Nutzer "Postgres" an, indem Sie ein eigenes Passwort vergeben:

Postgres-Passwort setzen


Starten Sie den Postgres-Datenbankserver mit

> sudo systemctl start postgresql

Folgen Sie nun den weiteren Installationsanleitungen unter

https://www.kivitendo.de/doc/html/ch02s05.html

Entfernen Sie insbesondere in der Datei /var/lib/pgsql/data/postgresql.conf die Kommentierung zu den Zeilen

listen_addresses = 'localhost'		# what IP address(es) to listen on;
port = 5432

und ändern Sie die Eintragungen in /var/lib/pgsql/data/pg_hba.conf wie folgt

# TYPE  DATABASE        USER           ADDRESS           METHOD

# "local" is for Unix domain socket connections only
local   all             kivitendo                        password
local   all             postgres                         md5
# IPv4 local connections:
host    all             kivitendo     127.0.0.1/32       password
# IPv6 local connections:
host    all             kivitendo     ::1/128            password

Achten Sie darauf, für beide Dateien die Berechtigungen nach jeder Änderung als Superuser wieder zurückzusetzen:

> su
# chown postgres:postgres /var/lib/pgsql/data/postgresql.conf
# chown postgres:postgres /var/lib/pgsql/data/pg_hba.conf

Ansonsten lässt sich der Postgres-Server nicht mehr starten.

Loggen Sie sich dann als Postgres-Nutzer ein und erstellen Sie den User "kivitendo" unter Verwendung des Passworts aus der kivitendo.conf

> su postgres
> createuser -drP kivitendo


Starten Sie Postgresql neu und sorgen Sie für die Aktivierung beim Systemstart:

> su
# systemctl restart postgresql
# chkconfig -a postgresql


Abschließend starten Sie auch den Apache-Server erneut:

> sudo service apache2 restart


Legen Sie nun mit diese Link automatisiert eine Authentifizierungsdatenbank an:

http://localhost/kivitendo/controller.pl?action=Admin/login

Hernach legen Sie den Benutzer, einen Mandanten und eine Gruppe entsprechend folgender Anleitung an:

 https://www.kivitendo.de/doc/html/ch02s09.html

Im Anschluss erzeugen Sie mit dem Reiter "Datenbankadministration"->"Neue Datenbank anlegen" eine gesonderte Datenbank nur für diesen Mandanten. Achten Sie dabei darauf, für Kapitalgesellschaften zwingen die "Soll-Versteuerung" und "Bilanzierung" auszuwählen!. Tragen sie anschließend die frisch angelegte Datenbank umgekehrt wieder in den Mandanteneinstellungen ein. Dort verknüpfen Sie auch den aktiven Benutzer direkt mit dem Mandanten.

kivitendo kann nun regulär über

http://localhost/kivitendo/

aufgerufen werden.

Troubleshooting

Wenn die Datenbank nicht mehr gelöscht werden kann, weil ein anderer Nutzer zugreift, loggen Sie sich als kivitendo in eine andere Datenbank ein und trennen Sie die Verbindung von außen:

> su postgres
> psql -d template1 -U postgres
=# SELECT pg_terminate_backend(pg_stat_activity.pid)
-# FROM pg_stat_activity
-# WHERE pg_stat_activity.datname='kivitendo_auth';
=# DROP DATABASE kivitendo_auth;
=# \q


Externe Links