Das ist eine für den Ausdruck optimierte Ansicht des gesamten Kapitels inkl. Unterseiten. Druckvorgang starten.

Zur Standardansicht zurückkehren.

Alte Installationsbeschreibung bis Version 2.0, Java 21

Alte Installation des Kieselstein ERP für die Version 2.0.0

Zur Dokumentation falls jemand noch diese nicht mehr gepflegte Version im Einsatz hat und diese pflegen will.

Wir können nur dringend raten auf die aktuellen Versionen zu wechseln


Nachfolgend eine lose Sammlung der Änderung gegenüber der Java11 Installation.
Getestet unter

  • Windows11, Windows2019
  • Debian13

Basisversionen

Herunterladen der neuen Release wie üblich von Gitlab Kieselstein Releases

Java21 FX von Azul

  • Java Home überschrieben, Java11 aber am Rechner belassen.
  • Path angepasst

Wenn du, warum auch immer, auch eine andere, z.B. Java11 Installation auf deinem Rechner installieren willst, beachte untenstehendes.

Postgres 18.4-1

  • vor der Installation bestehendes Postgres in den Services deaktivieren
  • d:\Program Files\PostgreSQL\18
  • für die Übertragung der Daten achte auf
  • Windowsanwender ändern für den Kieselstein-Server auch noch den Path auf die Postgres18, also z.B. von LW:\Program Files\PostgreSQL\15\bin\ auf LW:\Program Files\PostgreSQL\18\bin

Denke daran die Postgres einzustellen. Siehe

Info:
Mit der Debian 13 wird default die PostgresQL 17 zur Verfügung gestellt. Laut aktuellem Wissensstand kann diese gerne verwendet werden. Beachte bei einem allfälligen Update der PostgresQL jedoch, das unter Update Postgres beschriebene.

PGadmin 4, V 9.9

gerne auch neuer

Liquibase

Achte darauf das Liquibase 4.33.0 zu verwenden. Bitte derzeit keine 5er Version des Liquibase verwenden.
Bei der Installation das Bestehende Installation entfernen lassen verwenden.

Liquibase 4.33.0 kann auch mit Java21 betrieben werden.

Terminal 1.0 testen

Wir freuen uns wenn du im Zuge des Gesamt-Tests sowohl das Zeiterfassungsterminal in allen drei Ausführungen als auch die Mobile Android App mit-testes.
D.h. bitte von herunterladen

Kieselstein Server

  • Struktur wie unter Java11, z.B. aus der 1.1.x gehabt belassen
  • Benennung als dist belassen
  • Das bedeutet auf einem Rechner installiert auf dem nur mehr Java21 verwendet wird
  • data aus Java11 belassen, keine Änderungen

Reports

Es kann / sollte nur mehr JasperStudio 6.21.5 verwendet werden.
Für die Verwendung von JasperStudio 7 sind gröbere Umstellungen erforderlich. Dies wird in einem eigenen Projekt realisiert.

Da JasperStudio 6.21.3 nur bis zu Java 20 unterstützt, wir aber nun Java 21 verwenden, muss das Jasperstudio 6.21.5 verwendet werden.
Dafür zusätzlich zu den üblichen Einstellungen noch folgende Umstellungen treffen:

  • Window, Preferences

    Java, Compiler auf Java 21 stellen
  • Zusätzlich in ?:\Program Files\jaspersoftstudio\Jaspersoft Studio.ini
    den Eintrag unter vm von features/jre.win32.win32.x86_64.feature_17.0.8.1_1/eclipsetemurin_jre/bin auf dein eigentliches Java Home stellen, sodass dies z.B. wie folgt aussieht:
-vm
c:\Program Files\Zulu\zulu-21\bin

Bzw. wenn beim kompilieren die Fehlermeldung

java.lang.RuntimeException: java.lang.UnsupportedClassVersionError: com/lp/util/report/PositionRpt has been compiled by a more recent version of the Java Runtime (class file version 65.0), this version of the Java Runtime only recognizes class file versions up to 61.0

kommt, so obigen Änderung durchführen.

Hinweis:
Das auskommentieren des features/jre Eintrages geht nicht. Er muss aus der Ini gelöscht werden.

Anpassung des ClassPath

Zusätzlich muss, für den richtigen HelperReport auch die Java21 kieselstein-ejb-2.x.x.jar hinterlegt sein.

weitere Fehler Möglichkeiten:

  • HelperReport cannot be resolved to a type

    Ursache: Ungültige Client ejb im Classpath
    Abhilfe: auch hier wie oben beschrieben die Java21 kieselstein-ejb-2.x.x.jar hinterlegen.

Hinweis:
Wenn man alle bisher verwendeten QR Codes durch die QR-Codes aus dem Jasper Studio 6.21.5 ersetzt, sind die beiden Libraries:

  • core-3.2.1.jar
  • javase-3.2.1.jar

nicht mehr erforderlich.

XSL Vorlage vereinheitlicht

Bisher gab es für EMail (XSL) Definition des Angebotes eine eigene Vorlage (LW:\dist\wildfly-26.1.2.Final\kieselstein\reports\angebot\angb_angebot.xsl). Diese wurde in der Version 2 entfernt.
Solltest du diese alte Vorlage verwendet haben, so kopiere diese aus obigem Verzeichnis deiner Version 1.x.x nach LW:\data\reports\angebot.

Das hat den Vorteil, dass die allgemeinen xsl Definitionen auch für das Angebot greifen.

Barcodes

Im JasperStudio 6.21.x steht auch das QR-Barcode Format zur Verfügung.
Idealerweise sollte alle Reports, die nicht mehr im iReport bearbeitet werden, durch den integrierten QR-Code ersetzt werden. ACHTUNG: Wird der QR Code im Report verwendet, kann er im iReport nicht mehr geöffnet werden.

Installation

Für das Einspielen in eine komplette Postgres-Neuinstallation gehe wie unter Desaster Recovery beschrieben vor. Es werden durch das Durchführen der Schritte 1 & 2 auch Einstellungen an deiner Postgres-Installation vorgenommen, die beim direkten Einkopieren fehlen würden, womit möglicherweise dein Kieselstein ERP nicht vollständig funktioniert. Nachfolgend die Kurzfassung dazu:

  1. createdb.bat

  2. Starten liquibase mit update oder clear-checksums
    Wenn dies Fehler bringt so die Liquibase Version prüfen. Derzeit wird nur bis Liquibase 4.33 unterstützt. Liquibase 5 hat eine geänderte interne Struktur

  3. Liquibase 4.33
    unter Windows:

    • run-liquibase.bat clear-checksums
    • run-liquibase.bat update

    unter Linux:

    • liquibase.sh clear-checksums
    • liquibase.sh update

ACHTUNG: Wenn du eine bestehende Installation übernehmen willst, dann muss hier der Restore der alten Datenbanken gemacht werden. Danach sind liquibase clear-checksums und update auszuführen.

  1. Clients entpacken

  2. Server starten, aus CMD Shell
    Java Port in Firewall freischalten -> JA

  3. Anpassung des Client-Scalings
    ist ab 2.0.0.RC3 nicht mehr erforderlich

  4. Starten als Dienst
    Sollte der Dienst nicht starten, so aus dem LW:\kieselstein\dist\bootstrap\service\windows\install-kieselstein-services.bat mit Administratorrechten erneut aufrufen. Damit werden die Pfade usw. richtiggestellt.

Druck der Bestellung

Wenn der Druck z.B. der Bestellung wie folgt aussieht, bitte den Report wie oben beschrieben neu compilieren.

Datenbank

Es sollte die Postgres18 verwendet werden. Für die Übertragung der Daten gilt das unter Update Postgres geschriebene.

Update

So wie üblich, du wirst in aller Regel ein clear-checksums durchführen müssen.

Jasper Studio

Denke daran, dass das aktuelle Client EJB für den/die Buildpfade anpassen musst.

Hinweis zu core-3.2.1 und javase-3.2.1.
Wenn du ausschließlich die von JasperStudioCode 6.5.21 zur Verfügung gestellten QR-Codes verwendest, werden diese beiden externen JAR-Files nicht benötigt.

Alle Anwender-Reports neu compilieren

Bei der Umstellung müssen alle Anwenderreports neu kompiliert werden. Dafür das Build All

verwenden. Siehe dazu auch die nachfolgende Beschreibung zu Schriften.

Üblicherweise sollte man in jedem Druck so wenig unterschiedliche Schriften wie möglich haben. Daher und auch aus Lizenzgründen bitte alles auf Arimo oder deine lizenzierten Schriften umstellen. Hinweis: Für den Versand von Rechnungen im Zugferd-Format dürfen nur freie Schriften verwendet werden.

Hinweis:
Die Standard-Reports sind ab der Version 2.0.0 (ohne RC) bereits alle auf Arimo umgestellt.

Info:
Leider war die Verwendung der Liberation Sans nicht ausreichend stabil, weshalb wir auf die ebenfalls freie Schrift Arimo wechseln mussten. Auch diese ist zur Arial Größen kompatibel und eine freie Schrift (SIL Open Font License). Für weitere Details siehe bitte

Hinweis:
Die Report-Vorlage aus /allgemein/flrdruck.jrxml ist die programm-technische Vorlage für die Erstellung der Auswahllisten und darf nicht verändert werden. Wie hier ausgeführt, darf es dafür keine *.jasper Datei geben. Wir raten auch davon ab, diese Datei in das Anwenderverzeichnis der Reports mit aufzunehmen.

Schriften

Anstelle der bisher verwendeten Arial wird nun in allen Formularen die Arimo verwendet.
Die Standard-Formulare sind alle bereits geändert.
Es müssen jedoch die anwenderspezifischen Formulare, also die aus LW:/kieselstein/data/reports umgestellt werden.

Für die Installation von Arimo siehe

Für die Änderung der Schriften kann man das direkt im JasperStudio 6.21.5 machen.

  • Öffnen des Projektbaumes
  • Auswahl einer jrxml Datei
  • Klick auf den Reiter Source
  • Strg+H bringt den Suchen / Ersetzen Dialog
  • Suchen nach
fontName="Arial"
  • Einstellung

    und klicken auf Replace
  • Ersetzen mit
fontName="Arimo"

in

Womit in allen Formularen deines Workspaces alle Arial Fonts auf Arimo geändert werden.

  • ACHTUNG: Leider werden mit diesem Lauf die Fonts der Style Informationen nicht ausgetauscht. D.h. du musst, z.B. mit dem TotalCommander, alle deine jrxml Dateien nach Arial durchsuchen und hier dann die Fontnamen gegen Arimo austauschen.

  • nun noch kompilieren aller Reports mit Klick auf
    Hier darauf achten, dass alle Reports kompiliert wurden. Bleiben Reports mit den roten X bestehen. Diesen auswählen, erneut kompilieren und die eventuellen Fehler korrigieren.

Sans Serife

Gerade in den Anwender-Reports wurde oft auch die Schrift Sans Serife verwendet. Meist wird automatisch (vom Jasper-Reports) als Ersatz dafür die Liberation Sans verwendet. Da sowohl der Schriftschnitt der Sans Serife, als auch das Erscheinungsbild etwas anders ist, raten wir die oben beschriebenen Schrift-Ersetzungsmaßnahmen auch für die Sans Serife durchzuführen.

Jasper Studio default Font einstellen

Unter Window, Preferences und dann
Jaspersoft Studio, Properties
Hier dann runtersuchen bis default.font.name
Hier die gewünschte Schrift Arimo eintragen. Damit werden neue Felder immer mit dieser Schrift angelegt. Es empfiehlt sich auch die font.size auf 8 Pixel zu stellen, damit passt die Arimo in die Standard Texthöhe von 10 Pixel.

fuehreSQLQueryAus wurde entfernt

Diese schon seit langer Zeit nicht mehr unterstützte Funktion fuehreSQLQueryAus wurde mit der V2.0.0 endgültig entfernt. D.h. beim Kompilieren kommen entsprechende Fehlermeldungen.

Dies bedeutet, du musst alle SQL Aufrufe durch den Parameter $P{P_SQLEXEC}.execute ersetzen. Denke daran, dass bei Subreports dieser Parameter vom aufrufenden Report aus durchgereicht werden muss.

Anleitung

Eine Stichwortartige Anleitung wie für die Änderung in den Reports vorgehen, wobei fast alles im Jasperstudio 6.21.5 gemacht werden kann:

  • du sollst z.B. die Datei LW:\dist\wildfly-26.1.2.Final\kieselstein\reports\fertigung\fert_fehlteile.jrxml im JasperStudio verfügbar haben
  • kopiere von dieser Datei die beiden Parameter , P_SQLEXEC und P_MANDANT_OBJ
  • und füge diese als Parameter in deinen zu ändernden Report ein
  • als Muster kopiere nun aus der Variablen LosEndeTermin aus dem Report fertigung/fert_fehlteile die erste Zeile
$P{P_SQLEXEC}.execute(
  • ersetze nun in deinem anzupassenden Report den Aufruf von fuehreSQLQueryAus durch obigen Aufruf
  • sollte die zu ändernde Variable nicht einfach aufgefunden werden, so hat sich der Klick auf den Reiter Source bewährt. Hier mit Strg+F nach SQLQ suchen. Damit siehst du, wo überall der nicht mehr unterstützte Helper aufgerufen wird.

Wenn dieser Parameter in einem Subreport verwendet wird, musst du den Parameter aus dem Hauptreport durchreichen. Dazu:

  • Den Subreport links anklicken
  • In den Subreport Properties (meist rechts) auf den Reiter Subreport

    und dann auf den Button Edit Parameter klicken. ACHTUNG: Das JasperStudio braucht durchaus einige Zeit bis es diese Funktion geladen hat, oder stürzt leider ganz ab. Also vorher alle deine Änderungen sichern. Siehe dazu
  • Trage hier nun den P_SQLEXEC als zu übergebenden Parameter ein.
  • Im Subreport selbst gehst du analog zum oben Beschriebenen vor. D.h. du übergibst die beiden Parameter (P_SQLEXEC und P_MANDANT_OBJ). Kopierst aus dem Hauptreport die beiden Parameter und fügst diese in den Subreport ein.

Siehe dazu auch

Client-Farbgestaltung

An der Version 2 steht die Möglichkeit der eigenen Farbgestaltung, sogenannte Themes zur Verfügung.
Diese ist zweistufig gestaltet.

  • Vom Client aus. Dies ist gedacht um “seine” Farben herauszutesten
  • Am Server, ../kieselstein/data/… um dies für die jeweilige Installation spezifisch einzustellen. Z.B. um das Testsystem optisch eindeutig vom Echtsystem zu trennen.

Die Verwendung muss vom Client aus aktiviert werden. Du findest dies in der Hauptmenüleiste unter Ansicht.

Die standard Farbeinstellungen findest du unter LW:\kieselstein\dist\clients\lib\kieselstein-client-2.0.0-rc4.jar\com\lp\client\res\lpconfig.properties

Für die Farbeinstellungen siehe

Um das Design aus Serversicht einzustellen, musst du als Admin angemeldet sein.

Nutzung des Printservers

Der Printserver (LW:\kieselstein\dist\bootstrap\print-service\kieselstein-printservice) steht ohne Änderung auch unter Java21 zur Verfügung.

was testen

Für den Freigabetest solltest du den kompletten Umfang in dem du dein Kieselstein ERP verwendest bitte sehr akribisch prüfen. Idealerweise machst du dir auch eine Liste was du alles geprüft hast, prüfen willst. Hersteller von z.B. Medizinprodukten kennen dieses Verfahren.

Nachfolgend eine Aufstellung der zu prüfenden Dinge (die nicht vollständig sein muss):

  • Der tägliche Ablauf, die Verwendung aller von dir genutzten Module
    Bitte auch in den unterschiedlichen Arbeitsweisen der verschiedenen Anwender
  • deine Auswertungen
    • tägliche
    • monatliche
    • jährliche
    • auch die die nur von bestimmten Abteilungen bzw. der Geschäftsleitung genutzt werden
  • JSP, also alle genutzten Weblinks wie z.B. die Anwesenheitsliste aus dem Browser
  • die Import- und Exportfunktionen
  • die Verwendung aller der von dir genutzten Funktionen des Terminals
    Hinweis: Ev. solltest du die Gelegenheit nutzen und gleich die Version 1.2 des Terminals mit-testen.
  • die Verwendung aller der von dir in der mobilen App genutzten Funktionen, idealerweise auch in der Version 1.2
  • wenn du eine eigene RestAPI Anbindung hast, bitte diese Funktionen sehr akribisch prüfen
  • die Dokumentenablage, sowohl in der Anzeige und dem Ausdruck alter Dokumenten, als auch für neue mit der Testversion erzeugter und abgelegter Dokumente
  • prüfe die Hardware nahen Dinge, für mich gehören dazu vor allem:
    • jeglicher Etikettendruck
      Das gilt vor allem für kleine / sehr kleine Etiketten
    • jeder Ausdruck, vor allem die, die nicht das A4 Format verwenden bzw. alle die eine kritische Positionierung haben, z.B. Formulare befüllen
    • der indirekte Druck von Etiketten und ähnlichem aus Terminal bzw. mobiler App

Du solltest vor den Test der Ausdrucke in deinen Anwenderspezifischen Reports bereits die Umstellung auf Liberation Sans gemacht haben.

Hinweis:
Verwende bei den Tests der Etikettendrucke idealerweise ein sehr günstiges Etikettenmaterial.

Eine große Bitte
Solltest du einen Fehler feststellen, so ist das ärgerlich. Bitte notiere diesen Fehler, setze aber unbedingt deine Prüfungen fort, soweit irgend möglich. Wir wollen damit erreichen, dass mit einer einmaligen Änderung dann die gute Version zur Verfügung steht.

Bevor du uns den Fehler mitteilst, solltest du bitte im Git prüfen, ob dieser Fehler schon bekannt ist. Für die verschiedenen Release-Kandidaten wurden diese unter folgenden Links gesammelt.

Release Candidat Link
RC 1 #593
RC 2 #595
RC 2.1 #607
RC 3 #609
RC 4 #613
RC 5 #617
RC 6 #624
RC 7 - RC 9 betreffen die Umstellung von Liberation Sans auf die Arimo
Final geht mit Kleinigkeiten aus der RC9 hervor.
Für den Download siehe

Parallele Java Installation

Gerade in der Umstellungsphase wird es vorkommen, dass man auf einem Rechner sowohl das benötigte Java21 als auch z.B. das Java 11 gleichzeitig installiert haben möchte.

Wichtig ist hier darauf zu achten, dass die Java 21 Installation sauber bleibt, also nicht mit dem Java 11 vermischt wird.

Unsere Vorgehensweise dazu ist:

  • zuerst das Java 21 installieren und sowohl Path als auch Java Home setzen und auch die JavaSoft registration Keys.

Wenn du danach das Java 11 installierst, lade nur die Zip Datei herunter.
Kopiere dann den Inhalt auf ein Verzeichnis deiner Wahl. Wir raten davon ab, den Installer zu verwenden.

Nun musst du bei den Programme, die Java 11 verwenden eventuell explizit den Pfad auf dein Java 11 angeben, also auch die JAVA_HOME Variable temporär auf den entsprechenden Pfad setzen.

Tipp

Eine kleine Sammlung von Tipps / Besonderheiten aufbauend auf RC6

Start des Servers

Aufgrund der Umstellungen der Strukturen im Kernel des Kieselstein ERP Servers, dauert der Start der Module ca. doppelt so lange wie in der Version 1.x. Dafür ist dein Kieselstein ERP System dann im Betrieb deutlich schneller.

EMail Versand prüfen

Insbesondere wenn du auf einen neuen Server, eine neue IP-Adresse umgestellt hast, prüfe ob der EMail-Versand noch funktioniert. Je nach Konstellation kann es sein, dass an deinem EMail-Server (SMTP, IMAP, usw.) noch Einstellungen zu treffen sind.

Linux

Update / Installation Java

  • herunterladen von www.azul.com/downloads/

    • lade das .deb Paket herunter
    • Achte auf die FX Erweiterungen
  • Wechsle nun in dein Download-Verzeichnis und installiere das Java.
    Eventuell musst du vorher root werden. Das geht mit su - root. Jedenfalls brauchst du das root Passwort.

  • herunterladen in einer Headless Umgebung mit wget und danach den Downloadlink

apt install ./zulu21.52.15-ca-fx-jdk21.0.12-linux_amd64.deb

Installation überprüfen:

java -version

Java Home setzen

nano /etc/environment
JAVA_HOME=/usr/lib/jvm/zulu-fx-21-amd64
source /etc/environment
printenv | grep JAVA

zeigt dir die aktuellen Einstellungen deines JAVA_HOME auf deinem Rechner.

Herunterladen

  • Idealerweise gehst du vorher in dein Download-Verzeichnis
  • für die richtige Datei, einfach bei Releases rechtsklick und Link kopieren und dann mit wget und dem Link als root herunterladen oder eben von Gitlab herunterladen

opt vorbereiten

Bei einer bestehenden Installation wechselst du nach /opt/kieselstein und benennst das alte dist-Verzeichnis passend zur alten Version um. Die Version findest du in der Datei Version im Verzeichnis dist.

mv dist dist.1.1.15

entzippen

Beispiel für das Entpacken des Dist-Packets aus dem Downloadverzeichnis des angemeldeten Users.

tar -xvf ./kieselstein-distpack-2.0.0.tar.gz -C /opt/kieselstein

Datenbank updaten

cd /opt/kieselstein/dist/bootstrap/liquibase
./liquibase.sh clear-checksums
./liquibase.sh update

Achte darauf, dass dein Java21 verwendet wird.

Einrichten der Fonts

Fonts installieren

Dazu zuerst die Client-Dateien entpacken.

cd /opt/kieselstein/dist/clients
tar -xvf ./kieselstein-client-2.0.0.tar.gz

Damit findest du unter kieselstein-client-2.0.0 die Verzeichnisse bin und lib.
Im bin-Verzeichnis gibt es das Verzeichnis Fonts. Hier sind die benötigten Schriften. Kopiere diese wie hier beschrieben.

Kopieren der Font Dateien:

  • du stellst dich auf /usr/share/fonts/truetype
  • md arimo … für das Fontverzeichnis
  • cp /opt/kieselstein/dist/clients/kieselstein-client-2.0.0/bin/Fonts/. arimo/

Denke daran danach den Server neu zu starten.

Dienststart updaten

Unter /opt/kieselstein/dist/bootstrap/service/linux
das install-kieselstein-services.sh (erneut) ausführen, damit die geänderten Startparameter übernommen werden.
Dann mit systemctl start kieselstein-main-server.service starten
Unter /opt/kieselstein/dist/wildfly-26.1.2.Final/standalone/deployments das Startverhalten beobachten.

Gehe für die Installation auf einem Windows-Server analog vor. D.h. unter LW:\kieselstein\dist\bootstrap\service\windows\install-kieselstein-services.bat mit Administratorrechten ausführen.

Prüfung der Javaversion

Ab der Version 2.0.0 (final) wird auch die verwendete Java-Version geprüft. D.h. wenn du die Fehlermeldung

bekommst, so bitte die richtige Version installieren (verlinken). Mit der falschen Java-Version gehen alle Funktionen die die FX Komponente verwenden nicht, wie z.B. Kurzbriefe, EMail-Versand, usw.. Dies ist ein Fehler der Java-Version.

Ab der Javaversion 21.0.12+8 funktioniert die FX Komponente wieder.
D.h. wenn du dir sicher bist, das richtige Java installiert zu haben, kannst du die Fehlermeldung beim Start des Clients ignorieren.
Da ab der Version 2.1 deines Kieselstein ERP Java 25 zum Einsatz kommt, wird diese nun falsche Meldung voraussichtlich nicht korrigiert werden.

Kurzfassung der Umstellung

von 1.x auf 2.0.0

Vorbereitung am Server

  • Java auf Java 21 umstellen
  • Update der Datenbank wie üblich
  • neues Dist wie üblich einkopieren
  • client.zip vorbereiten und unter LW:\Kieselstein\dist\clients zur Verfügung stellen
    • dabei die IP-Adresse des KES-Servers und ev. die locale in der ..\bin\kieselstein_server_setzen.bat entsprechend einrichten
  • die passende Java Installationsdatei auch unter LW:\Kieselstein\dist\clients zur Verfügung stellen

Update der Clients

  1. Deinstallieren des Java 11 (und aller anderen Java Versionen) Systemsteuerung, Programme und Features, Azul Zulu 11 deinstallieren

  2. Java und Client herunterladen von http://IP_ADresse_Kieselstein_ERP:8080/, dann auf download clients klicken und das Client.zip und das zulu21… herunterladen

  3. das Zulu21 (Java 21) installieren, dabei darauf achten das Java Home zu setzen

    auf entire …. Bitte nur dieses Java verwenden. In der neueren Version ist leider ein Bug enthalten.

  4. das bestehende Client-Verzeichnis aus c:\Kieselstein komplett löschen

  5. In das Client.zip reingehen und das Verzeichnis Client in das c:\kieselstein reinkopieren

  6. Hier findest du im Unterverzeichnis bin die Datei Kieselstein_server_setzen.bat
    Diese bitte einmal als Administrator ausführen.
    Damit wird die Environment Variable gesetzt und die Schrift installiert.

  7. Nun kann der Kieselstein Client mit der bisherigen Desktop Verlinkung gestartet werden. Wenn du möchtest kannst du über die Eigenschaften der Desktop Verlinkung das neuere Icon Kieselstein_weißauftürkis setzen.
    Gerne auch eine neue Desktop-Verknüpfung auf die nunmehrige c:\Kieselstein\Client\bin\kieselstein-client.bat einrichten.

  8. Den Kieselstein Client starten und mit den bisherigen Anmeldedaten anmelden.

Backup

Prüfe ob dein Backup noch funktioniert. Es hat sich doch einiges geändert.

Funktionieren die grundlegenden Dinge?

Ich persönlich prüfe gerne nach diesem doch größeren Update, ob nach alles so wie erwartet funktioniert. Hier geht es nicht um die Funktionalitäten des Programms, sondern ob den die Installation wie gedacht funktioniert. Dafür hat sich folgender Schnellcheck bewährt

  • Anmelden
  • Ausdrucken eines Kurzbriefes, als physikalischen Papierausdruck
  • Versenden dieses Test-Kurzbriefes auch als EMail -> kommt dieses EMail beim Empfänger auch an (bedenke den Zeitversatz von üblicherweise fünf Minuten)

MACos

Das alte Java vor dem Update deinstallieren. D.h. im Finder auf /Library/Java/JavaVirtualMachine/ das alte zulu-xx.jdk entfernen.
Denke daran, das JAVA_HOME in der ~/.zshrc anzupassen, bzw. für alle User unter /etc/zprofile

1 - Farbliche Gestaltung deines Kieselstein ERP Clients

Wie die Farben Clients deines Kieselstein ERP ab Version 2.x.x gestalten

Ab der Version 2.x.x steht die Farbgestaltung über eigene Properties / Dateien zur Verfügung. Eine Vorlage findest du unter LW:\kieselstein\dist\clients\lib\kieselstein-client-2.0.0-rc4.jar\com\lp\client\res\lpconfig.properties

Idealerweise prüfst du deine gewünschten Farben nur auf deinem lokalen Client aus. Entsprechen diese deinen Wunschvorstellungen kannst du diese auch Systemweit ausrollen.

Um nun einen Bezug zwischen der propertie-Datei und deren Wirkung herzustellen, haben wir die Standard Datei genommen, in dieser alle Einträge für den Standardlook und den speziellen Definitionen für die Rot-Grün Fehlsichtigkeit entfernt und nun jeweils einen Parameter auf die Farbe .. verändert und dies dokumentiert, sodass du ein Gefühl dafür bekommst, mit welchem Parameter du welche Wirkung erzielen kannst.

Bitte beachte:

  • Idealerweise bearbeitest du die properties Datei mit dem Notepad++
  • Hinter der Angabe des Hex-Wertes darf kein wie immer gearteter Text kommen. Leider auch kein Kommentar
  • Nach dem Speichern muss die Änderung neu eingelesen werden. D.h. im Hauptmenü, Ansicht, Design von Datei laden (lokal)

Wir haben folgende Werte verändert:

Parameter Default Wert Hinweis Bild_Bild_Bild_Bild_Bild_Bild_Bild_Bild
color.heliumlook.button.background.normal fafafa Hintergrund der Buttons
color.heliumlook.button.border.normal dcdcdc Rahmen um die Buttons
color.heliumlook.checkbox.background.normal fafafa
color.heliumlook.dependencefield.background.disabled.normal eeffdd
color.heliumlook.dependencefield.background.normal ddffbb während des bearbeitens siehe z.B. Artikel, Technik, Material, Kupferzuschlag
color.heliumlook.desktopstatusbar.border.normal e6e6d2
color.heliumlook.label.background.normal fafafa für die Listenüberschriften
und die Umrandungen der angezeigten Werte
color.heliumlook.list.background.normal Artikel Detail
Bestellvorschlag Lieferanteninfos unten
color.heliumlook.lpmodul.toolbarbutton.background.normal fafafa Man muss den Client neu starten
Die Definition des Borders wirkt erst, wenn lpmodul.toolbarbutton.background definiert ist. Wenn leer, dann wird kein Border gezeigt
color.heliumlook.lpmodul.toolbarbutton.border.normal
color.heliumlook.mandatoryfield.border.normal faba61 Der Rahmen um ein Pflichtfeld
color.heliumlook.optionpane.background.normal fafafa
color.heliumlook.panel.background.normal fafafa
color.heliumlook.panel.toolbarbutton.background.normal e9e9e9
color.heliumlook.panel.toolbarbutton.border.normal
color.heliumlook.radiobutton.background.normal fafafa
color.heliumlook.scrollpane.background.normal fafafa Die Scrollbars der Druckvorschau
color.heliumlook.selectedField.background.normal b4c3ff ????? #FFB3EA unbekannt ![
color.heliumlook.statusbar.border.normal e6e6d2
color.heliumlook.table.gridcolor.normal dddddd
color.heliumlook.tableheader.background.normal fafafa
color.heliumlook.text.normal 0 Ist z.B. der Inhalt der Datumseingabe
color.heliumlook.text.valid.normal 009600 ist eigentlich ungültig / invalid #FF00FF
color.heliumlook.text.invalid.normal ff0000 ????? Unbekannt Rot #777700
color.heliumlook.textfield.background.normal d8eff6 Dateiauswahldialog
color.heliumlook.textfield.showborder 0 0..kein Border
1..Border mit Farbe aus textfield.border
color.heliumlook.textfield.border.normal dddddd Direktfilter, alle Eingabefelder
color.heliumlook.textfield.editable.normal ffe6cb
color.heliumlook.textfield.inactiveforeground.normal 0000ff ????? unbekannt Blau #000077
color.heliumlook.textfield.noteditable.normal f0f0f0 Nur Anzeigen von Feldern
color.heliumlook.textfield.onfocus.normal d7e6f2 während des Bearbeitens das Feld auf dem der Focus ist
color.heliumlook.toolbar.background.normal fafafa Datei Dialog
color.heliumlook.viewport.background.normal fafafa Der leere Hintergrund von Listen

Wie kann ich die Hexfarben definieren?

Dies geht z.B. mit einem grafischen Editor wie dem Paint unter Windows. Hier einfach z.B. ein Rechteck malen und auf Palette bearbeiten klicken.
Nun die gewünschte Farbe auswählen und oben den Hexcode auslesen.

Musterdatei

Eine Musterdatei, in der auch die unbekannten Elemente definiert sind findest du hier.farbmuster_default.properties
Beachte, dass nur die Farben im Kieselsteinlook und nicht in der Rot-Grün Fehlsichtigkeit definiert sind.

Trennung verschiedener Installationen

Gerade für den parallelen Betrieb von Echt- und Test-Systemen, empfiehlt sich, für das Testsystem entsprechende Warn-Farben zu hinterlegen, sodass man jederzeit erkennen kann, auf welchem der System man ist.

Dafür können die Servereinstellungen verwendet werden.
D.h. wenn du als Admin angemeldet bist, so findest du im Hauptmenü unter Ansicht, Design von Datei laden (Server). Hier werden die Resource-Einstellungen in der Datei %KIESELSTEIN_DATA%/configdesign/kieselstein-look.properties abgelegt.
Das bedeutet auch, dass du

  • zuerst mit den Client Einstellungen die gewünschten Farben erarbeitest und dann
  • diese Properties-Datei für alle Anwender entsprechend ausrollst, indem du die eben in der oben angeführte Datei ablegst.

Das bedeutet auch, wenn du am Client für den Server eine Farbdefinition lä#dst, so wird diese automatisch unter LW/kieselstein/data/configdesign/kieselstein-look.properties abgelegt und somit allen Anwendern dieser Installation zur Verfügung gestellt.

2 - Schriften mit Kieselstein ERP Version 2.x, Java21

How To in Zusammenhang mit den Schriften deines Kieselstein ERP ab der Version 2.x

Das Kieselstein ERP Version 2.x kommt default mit Arimo in den Formularen.

Wichtig ist, dass auf allen deinen Rechnern, auf denen dein Kieselstein ERP gestartet wird, egal ob Client oder Server, die gleichen Fonts (Schriften) installiert haben musst.

Verwende dazu die im Clientverzeichnis ausgelieferten Fonts.
LW:\kieselstein\dist\clients\bin\Fonts

Diese sind gleichlautend zu den von Google zur Verfügung gestellten Fonts.

Info:
Da von der Liberation Sans viele verschiedene Versionen im Umlauf sind und eine stabile Prüfung der Versionen, vor allem unter Windows offensichtlich nicht möglich ist, haben wir uns entschlossen den Arimo Font, welcher wiederum von Liberation Sans abgeleitet ist, zu verwenden. Wir gehen davon aus, dass es von diesem Font auf allen von uns unterstützten Betriebssystemen nur eine Version gibt.

Stellt die Überprüfung fest, dass die Fonts nicht mit den in Kieselstein ERP eingebundenen Fonts übereinstimmen, kommt sinngemäß folgende Fehlermeldung:

Installiere in diesem Falle die oben angegebenen Fonts auf deinem Kieselstein ERP Server und auch auf dem jeweiligen Client.

Hinweis zum Printserver:
Solltest du auch den Kieselstein ERP Printserver im Einsatz haben, so muss auch auf diesem Rechner die gleiche Version des Arimo Fonts installiert sein. Sollte dies nicht der Fall sein, so siehst du im Log des Printservers einen dazu passenden Hinweis.

[Mi. Mai 06 11:40:58 MESZ 2026] SCHWERWIEGEND: Jasper Print Job failed with exception: Font "Arimo" is not available to the JVM. See the Javadoc for more details. 

Wo müssen die Schriften hin

Damit in deinem Unternehmen überall die gleichen Fonts verwendet werden, müssen auf allen mit Kieselstein ERP beteiligten Rechnern die gleichen Fonts verwendet werden. D.h. auch auf deinem Kieselstein ERP Server.
Dafür haben wir die freien Fonts im Client Startverzeichnis zur Verfügung gestellt. D.h. du findest diese unter:
LW:\kieselstein\dist\clients\kieselstein-client-2.0.0-rc9.tar.gz und hier dann unter kieselstein-client-2.0.0-rc9\bin\Fonts.
Installiere diese Fontdateien mit den Werkzeugen des jeweiligen Betriebssystems.

In anderen Worten: Immer wenn du an den Fonts / den Font-Dateien etwas änderst, muss zumindest der Java Prozess neu gestartet werden. Das kann auch bedeuten, wenn ein anderes Programm, den Arimo Font überschreibt, dass es noch bis zum nächsten Neustart (des Rechners, des Java-Programms) gut geht und nach dem Neustart spinnt es.

Hinweis:
Wenn du unter Windows direkt aus dem Font-Verzeichnis, Rechtklick machst, so denke daran, insbesondere am Server, dass du für
Für alle Benutzerinstallieren auswählst.
Zur Sicherheit kannst du auch prüfen, dass die Fontdateien unter c:\Windows\Fonts tatsächlich vorhanden sind.

Welche Schriften sind installiert

Auf einem Linux-System gibt es das Commando: fc-list
Dieses zeigt dir alle auf deinem System installierten Schriften. D.h. auch, mit:

fc-list | grep -i arimo | sort

bekommst du eine Übersicht, wo überall und für welchen User die verschiedenen Arimo-Fonts installiert sind.

Unter Windows findest du diese Liste unter Einstellungen, Personalisierung, Schriftarten.

Muss ich die Schrift auf allen Rechnern installieren

Ja, sowohl auf deinem Kieselstein ERP Server als auch auf allen Rechnern die den Kieselstein ERP Client verwenden (und auch ausdrucken).

Achte darauf, dass wirklich die Arimo Schrift auf den Clients installiert ist. Es kann der Client auch ohne dieser Schrift betrieben werden. Es werden dann jedoch anstelle der Schriftzeichen nur Bilder gedruckt, womit die daraus erzeugten Jasper Dateien, z.B. der Dokumentenablage, nicht mehr nach Texten durchsucht werden können.
Menschen mit einem guten grafischen Auge, erkennen auch leichte Unterschiede in der Darstellung, vor allem in der Schärfe der Texte.

Es werden derzeit nur die unter Static, bzw. im Client Font Verzeichnis angeführten Fonts benötigt.

Hinweis:
Idealerweise installierst du die Arimo für alle Benutzer.

Sollte beim Start des Clients nur die Fehlermeldung kommen, dass der Font am Server nicht installiert ist, du aber die Fonts installiert haben, so starten deinen KES Server durch, damit auch die Java Umgebung (JVM) die neuen Fonts mitbekommt.

Hinweis in Kombination mit alten (V1.x) Installationen:
Wenn du auf deinen Client-Rechnern sowohl die Version 1.x (das Live-System) und die Version 2.x (z.B. zum Test) installiert hast, und die Schrift Liberation Sans auf den Client-Rechnern eingerichtet ist, so müssen auch auf dem Kieselstein ERP Server der Version 1 die passenden Fonts eingerichtet sein. Anderenfalls kann es auch in dieser Konstellation zur falschen Darstellung z.B. der Umlaute kommen.

Hinweis zur Verwendung von Sans Serife:
Offensichtlich wird vom Server (Jasper) die Liberation Sans, zumindest in Linux (Debian) Umgebungen, als Ersatz für die Sans Serife verwendet. Womit sich die oben beschriebene Thematik weiter verbreitet.
Lösungsmöglichkeit:

  • Verwende in allen Formularen der Version 1.x anstelle der Sans Serife die Schrift Arial

Es werden keine Texte mehr gedruckt

Bekommst du beim physikalischen Papierdruck, der auch in einen PDF-Drucker gehen kann (und nicht mit dem Speichern als PDF) ein ähnliches Bild wie hier

so starte deinen Rechner und unter Umständen auch deinen Server neu, damit die richtigen Fonts geladen werden.

Fehlermeldung beim Reportaufruf

Erhältst du beim Drucken eines Reports die Meldung

So bedeutet dies generell, dass eine im Report verwendete Schrift / Font, am Server nicht verfügbar ist. Gerade in der Umstellungszeit kann es sein, dass du auf deinem Kieselstein ERP Server die Schrift Arimo nicht installiert hast. Bitte installieren.

Im Detail der Fehlermeldung siehst du, welche Schrift genau fehlt.

class com.lp.client.frame.ExceptionLP
net.sf.jasperreports.engine.util.JRFontNotFoundException: Font "Arimo" is not available to the JVM. See the Javadoc for more details.

Font am Client nicht verfügbar

Bekommst du beim Aufruf eines Reports die Meldung

so bedeutet dies meist, dass eine Schrift am Client nicht installiert ist.
Details dazu findet man, etwas versteckt, im Client-Log.
Gerade in der Umstellungszeit, wird das auch die Schrift Arimo sein, was bedeutet, bitte auch am Client installieren.

Am MACos installieren

Wichtig: Bevor du die Schriften zu installieren beginnst musst du definieren wo diese hin installiert werden sollten. In der Regel willst du für dein Kieselstein ERP dies für alle Benutzer einrichten. Also bitte wie folgt vorgehen:

  • Schriftsammlung
  • Einstellungen
  • Installation
  • Nun Standardort für Installation, hier alle Benutzer auswählen

Nun kannst du die Arimo-Font Dateien aus deinem Kieselstein-Client-Verzeichnis einfach mit einem Doppelklick installieren.
Diese sind danach im Verzeichnis /libraries/fonts zu finden.

3 - Installation Kieselstein ERP Server

Installation des Kieselstein ERP Applikationsservers ab Juni 2025

Wie für die Installation deines Kieselstein ERP Servers ab Juni 2025 vorgehen

Vorbereitung für Serverinstallation

Wird die Serverinstallation von uns durchgeführt, so benötigen wir, neben den ganzen Zugangsdaten,

  • bitte die Info auf welches Laufwerk die Installation erfolgen sollte.
  • In virtuellen Umgebungen, bitte genau den Server angeben, auf den es installiert werden sollte.
  • bitte die Größen Kalkulationen beachten siehe Anforderungen

Neuinstallation oder Update?

  • Vorbereitung für eine Neuinstallation siehe
  • Die wenigen Schritte für das Update sind hier beschrieben
  • Für eine Wiederherstellung siehe

Unterschiedliche Notierung Linux / Windows

Unter Linux wird das kieselstein unter /opt/kieselstein installiert.
Von der Bedeutung her wird die sehr ähnliche Struktur unter Windows auf LW:\kieselstein eingerichtet, wobei hier LW für das Laufwerk der lokalen Kieselstein Installation steht.

In der nachfolgenden Dokumentation verwenden wir immer die Windows-Notation (außer es gibt besondere Gründe dies anders / doppelt darzustellen).
Für Linux bitte einfach das LW: durch /opt und die \(Backslash) durch /(Forward Slash / Schrägstrich) ersetzen.
Ab dem Kieselstein Verzeichnis sind die Strukturen in allen Systemen gleich.

Environment Variablen

Die Steuerung des Verhaltens deines Kieselstein ERP Servers erfolgt in der Regel (wir können nur dringend dazu raten) mit Environment / Umgebungsvariablen. Für die Beschreibung dieser sei auf LW:\kieselstein\dist\bin\README.md verwiesen bzw. siehe
Weitere verwendete Environment Variablen sind in der jeweiligen Server-Startdateien beschrieben, also LW:\kieselstein\dist\bin\launch-kieselstein-main-server.bat bzw. .sh

Verzeichnisstrukturen

Mit der Erfahrung der letzten Jahre raten wir zur Verwendung folgender Verzeichnis-Struktur.

Grundsätzlich ist die Struktur in den Betriebssystemtypen (Linux, Windows, MAC) annähernd gleich. Lediglich die Basispfade unterscheiden sich.

Betriebssystem Basispfad
Linux /opt/kieselstein
Windows LW:\kieselstein

Nach dem LW:\kieselstein gibt es die Verzeichnisse dist und data und eventuell das Client.
Im dist befindet sich immer die aktuell in Verwendung befindliche Version. Dies ist auch in der Datei LW:\kieselstein\dist\VERSION.txt ersichtlich.
Im Client ist die vorbereitete Clientinstalltion enthalten, welche dann als gezippte Version unter LW:\kieselstein\dist\clients\Client.zip zur Verfügung gestellt wird.

Für ein Update wird lediglich das dist Verzeichnis auf dist.Versionsnummer umbenannt und danach aus der heruntergeladenen Zip-Datei siehe das neue dist-Verzeichnis einkopiert.

Arbeiten mit den gezippten Dateien

Es hat sich bewährt, unter Windows, für das Arbeiten mit den tar bzw. gz Dateien, den Totalcommander zu verwenden. Dieser kann alle Pack-Formate auflösen.
Alternativ kann auch 7Zip verwendet werden.

Neuinstallation

Für die Neuinstallation deines Kieselstein ERP Systems müssen folgende Programme / Dienste / Voraussetzungen gegeben sein.

  • Ausreichend Platz sowohl für die Festplatte als auch Systemspeicher siehe
  • PostgresQL der verwendete Datenbankserver siehe
  • Aktuelles Java mit der FX-Erweiterung von Azul siehe
  • Liquibase Datenbank Update Manager in der aktuellen Version siehe
  • Die aktuelle Kieselstein Version

Nachdem du PostgresQL und das aktuelle Java installiert hast (und diese auch funktionieren) muss deine Kieselstein Datenbank eingerichtet werden. Siehe dazu

Manuell starten

Daran anschließend solltest du deinen Kieselstein Server manuell, also in einer Command Shell, starten.

  • Windows: LW:\kieselstein\dist\bin\launch-kieselstein-main-server.bat
  • Linux: /opt/kieselstein/dist/bin/launch-kieselstein-main-server.sh

Das Ergebnis muss hier sein, dass der Server Fehlerfrei startet, was bedeutet (leider sind einige Warnings derzeit noch normal) dass unter LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments<br> drei deployed Dateien sein müssen (kieselstein-1.0.26.ear.deployed, jackrabbit-jca-2.22.0.rar.deployed, tinymce.war.deployed)
Es darf keine failed Einträge geben.
Da dieser Start einige Minuten dauern kann, abhängig von der Performance deines Servers, wird während des Startens *.dodeploy bzw. *.isdeploying bei obigen drei Dateien angezeigt.

Sollte der Start nicht gelingen, so hilft ein Blick in die Log-Datei unter LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\log\server.log

Ein weiteres Kennzeichen dass das KES gut gestartet ist, ist die Anzeige im Command Shell von

Für die Installation eines Debian mit anschließender Einrichtung des Kieselstein ERP Servers siehe

Client Einrichtung

Die zu deinem Server passenden Clientdateien findest du unter LW:\kieselstein\dist\clients\kieselstein-client-develop.tar.gz
Hier sind, mehrfach gezippt (LW:\kieselstein\dist\clients\kieselstein-client-develop.tar.gz\kieselstein-client-develop) die beiden Verzeichnisse

bin und lib.

Bewährt hat sich, wenn du dir direkt in deiner Kieselstein-Server-Verzeichnis-Struktur auch ein Verzeichnis Client (neben dist und data) anlegst und in dieses das bin und das lib Verzeichnis einkopierst. Die Struktur sollte wie folgt aussehen.

Info:
Die Anpassung der Dateien unter bin ist nur initial erforderlich. Bei den Updates muss ledglich das lib-Verzeichnis ausgetauscht werden.

Weiteres zu Sprachen am Client siehe

Anpassung der Client-Start Datei

Ab der Version 2 steht die Möglichkeit des setzen der Environmentvariablen für die Adresse deines Kieselstein Servers und der gewünschten Sprache zur Verfügung.
D.h. du musst nur mehr einmal die kieselstein_server_setzen.bat Datei anpassen und diese als Administrator ausführen. Damit können in Zukunft die Startdateien gleich belassen werden.

Zugleich werden beim Aufruf dieser Batch-Datei (kieselstein_server_setzen.bat) die von Kieselstein ERP verwendeten Fonts, LiberationSans, aktualisiert. Diese sind von ihrer Lizenzierung frei und werden in der Version 2 für alle Reports verwendet. Insbesondere für den Versand der eRechnung, welche als XML in Zugferd eingebettet ist, sollten nur wirklich freie Fonts verwendet werden.

Alternativ kannst du aber auch die bisherige Anpassung der unten angeführten Client-Startdateien verwenden. Achte aber darauf, dass die Liberation Sans auf aktuellem Stand ist.
Die Client-Startdateien aus dem Verzeichnis bin müssen einmalig auf Sprache und IP-Adresse angepasst werden. D.h. hier muss der localhost gegen die IP-Adresse deines Kieselstein ERP Servers ausgetauscht werden und gegebenenfalls die Sprachdefinition von de_AT auf z.B. de_DE geändert werden.

Betriebssystem Batch Script
Linux kieselstein-client
Windows kieselstein-client.bat

Wenn der oben beschriebene Start deines Servers funktioniert hat, was die Regel ist, so kannst du nun durch Start des passenden Batch-Scriptes direkt am Server deinen Kieselstein ERP Client starten.
Für Linux-Anwender bzw. generell. Der Client braucht einen entsprechenden grafischen Desktop.

Beim Starten zeigt dir der Client zuerst den Kieselstein Splash-Screen und kommt dann mit dem Anmeldedialog

in dem deine Sprache bereits voreingestellt ist.

Du solltest nun diese angepassten Clientdateien deinen Anwendern zur Verfügung stellen, in dem das Clientverzeichnis (LW:\kieselstein\Client) gezippt wird und unter LW\kieselstein\dist\clients\Client.zip zur Verfügung gestellt wird. siehe client vom Browser installieren.

Dienst einrichten

Sind obige Punkte positiv verlaufen, so sollte dein Kieselstein ERP Server als Dienst / Service eingerichtet werden. Dazu:

  1. den oben angeführten manuellen Start beenden
  2. aus LW:\kieselstein\dist\bootstrap\service\ für dein Server-Betriebssystem
    Betriebssystem Install Script
    Linux linux/install-kieselstein-services.sh
    Windows windows\install-kieselstein-services.bat

ausführen. Bitte immer direkt aus dem jeweiligen Verzeichnis. 3. den jeweiligen Service starten

Betriebssystem Service Start Kommando
Linux systemctl start kieselstein-main-server.service (wird bei der Installation mit gestartet und enabled)
Windows in den Services starten

Auch hier solltes du im deploy Verzeichnis (LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments) prüfen, dass der Kieselstein ERP Server tatsächlich gestartet ist.

Damit ist die Installation abgeschlossen.

Allgemeines rund um die Installation

Achte darauf, dass auch auf deinem Server die gleichen Liberation Sans Schrift, wie für den Client zur Verfügung gestellt, verwendet wird.

Welche Programme sind noch praktisch

Windows

wir verwenden gerne auch noch:

Linux

  • Midnight Commander
apt install mc
sudo apt install doublecmd-gtk

danach mit doublecmd starten

  • gedit, natürlich kann man die Dateien mit dem Nano bearbeiten. Praktischer ist jedoch der gedit.

MAC OS

Anmelden und als root arbeiten

Da üblicherweise kein root installiert wird, man aber die Rechte braucht, einfach mit su root und dem eigenen PW anmelden.

IP Adresse des Rechners

ip address

Wie komme ich zu einer aktuellen Version?

Wir freuen uns über jedeN der uns beim Testen der aktuellen Software hilft. Insofern stehen unter dem Link die latest Release und ein aktueller Build zur Verfügung.
D.h. über den Link kommst du zum Repository des Kernsystems von Kieselstein ERP.
Nun kannst du durch Klick auf Latest Release die letzte gültige Version herunterladen.
Alternativ bekommst du den aktuellen Stand durch Klick auf , welche den neuesten von der Technik / Softwareentwicklung zur Verfügung dargestellten Stand darstellt.

Um die Latest Release, zu finden auch unter direkt herunter zu laden, klicke auf den Button und dann auf

Leider ist die Kennzeichnung der Dateien im Gitlab nicht immer einheitlich. D.h. es kann auch anstatt Pakete mit sonstiges bezeichnt sein.

Beachte bitte unbedingt die unter Versionshinweise

angegebenen Punkte.

Entzippe aus dieser Datei das dist Verzeichnis nach LW:\kieselstein\dist

Lege parallel dazu ein Verzeichnis data (LW:\kieselstein\data) an

Installation Datenbankserver

Es werden aktuell ausschließlich PostgresQL Version 14 und 15 unterstützt. Ab der Kieselstein ERP Version 2 solltest du Postgres 18 verwenden. MS-SQL wird nicht unterstützt. Für eine eventuelle Konvertierung deiner MS-SQL Datenbank wende dich bitte an die Kieselstein ERP eG. Neuere PostgresQL Versionen können funktionieren, sind aber aktuell von uns nicht freigegeben.
Bei der Installation darauf achten, dass nur PostgresSQL Server und die Command Line Tools installiert werden.

Bei der Installation muss auch das default Passwort für den User Postgres angegeben werden (postgres). Beachte in diesem Zusammenhang auch die Themen der Datenzugriffssicherheit. Aktuell kann das Datenbankpasswort durch die Environmentvariable MAIN_DB_PASS übersteuert werden.

Bitte prüfe, dass auch der Port auf 5432 vorgeschlagen wird.

Beachte, dass die Installation in Windowssystemen idealerweise auf einem eigenen Laufwerk erfolgt. Also z.B. nicht auf C: sondern, vom Betriebssystem unabhängig auf z.B. D:

Für die Installation benötigst du auch

Denke daran die Postgres einzustellen. Siehe

Installation Liquibase

Siehe bitte

Leere Datenbank ab der Version 1.x.x

ACHTUNG:
Wenn du bestehende Daten übernimmst, schau im Kieselstein ERP Wiki nach.

Ab der Version 1.x.x steht eine leere Datenbank zur Verfügung.
D.h. mit LW:\kieselstein\dist\bootstrap\liquibase\createdb.bat bzw. .sh (4x postgres PW eingeben) legst du die grundsätzlichen Datenbanken an.
Wenn du die vorbereiteten Daten verwenden willst, dann bitte jetzt einlesen und erst danach mit dem Liquibase Update weiter.
Führe nun aus dem Liquibaseverzeichnis (LW:\kieselstein\dist\bootstrap\liquibase) mit *run-liquibase.bat update * bzw. liquibase.sh update aus und erzeuge damit eine leere aber funktionsfähige Datenbank.

ACHTUNG: Liquibase ab Version 4.29 verlangt Java 11
Aktuell bitte maximal Liquibase Version 4.xx verwenden. Die Liquibase Version 5 hat andere Datenstrukturen. Eine entsprechende Adaptierung ist in Planung.

IP Internet Protokoll

Bitte verwende aktuell nur IP V4, sowohl für den Zugriff auf den Datenbank-Server als auch für die Kommunikation von den Clients mit deinem Kieselstein ERP Server.

Installation PGadmin

Die abschließende Meldung nach dem Rechner-Neustart kann ignoriert werden.

Setzen Environmentvariable

  • path Erweiterung auf Postgres “LW:\Program Files\PostgreSQL\VV\bin"
    Hinweis: Es muss auch der Dienst auf diesen Pfad zugreifen können.
  • KIESELSTEIN_DIST=LW:\kieselstein\dist
  • KIESELSTEIN_DATA=LW:\kieselstein\data
  • eventuell ein abweichendes Datenbankpasswort: MAIN_DB_PASS
  • Empfehlung:
    Passe auch die KIESELSTEIN_JAVA_OPT_XMX (5G) und die KIESELSTEIN_JAVA_OPT_XMS (512M) an, sofern dein Kieselstein ERP Server ausreichend Ram-Speicher zur Verfügung hat.

Es gibt noch weitere optionale Environment-Variablen welche in der README.md Datei bei den Start-Scripten (im KIESELSTEIN_DIST/bin/) beschrieben sind.

Vorbereitete Daten

Wir haben für Testzwecke eine sehr kleine und einfache Musterdatenbank eingerichtet. Diese findest du hier. Bitte beachte:

  • in Deutsch Österreichisch anmelden
  • es sind keine Dokumente enthalten
  • es ist die integrierte Finanzbuchhaltung aktiviert und damit auch die österreichischen Steuersätze und Formulare usw.

Führe hier bitte das restore_Demodaten.bat aus. Das Ergebnis sollte wie folgt aussehen.

Eine weitere Variante sind Demodaten in deDE und ohne Fibu. Diese findest du hier. Bitte beachte:

  • in Deutsch Deutsch anmelden
  • es sind keine Dokumente enthalten
  • die integrierte Finanzbuchhaltung ist deaktiviert und es sind die deutschen Mehrwertsteuersätze eingerichtet.

D.h. anstatt des restore_Demodaten.bat führst du das restore_Demodaten_DE_OF.bat aus.

Tipps und Tricks

Eine lose Sammlung von Tipps, KnowHow und ähnlichem für den/die Consultant im Rahmen der Installation.

ACHTE immer auf die Sicherheit Durch das Öffnen von Ports, gibt es natürlich auch mehr Möglichkeiten das System anzugreifen. Also denke auch an die Verwendung von VPN Tunnel usw..

Dass Betriebssystem, Virenscanner und Firewall immer aktuell sind, ergibt sich schon aus der DSGVO.

Die Themen rund um die Sicherheit, Passwörter abweichend vom default usw. sind im Web ausreichend abgehandelt. Kieselstein ERP eG Mitglieder schauen im Wiki unter dem Suchwort Sicherheit nach.

Ports die für die Kommunikation benötigt werden

Port Zweck
8080 für den Zugriff auf den Kieselstein ERP Applikationsserver inkl. RestAPI
5432 für den Zugriff auf die Postgres-Datenbank
22 für Linux, SSH Kommunikation

Das sind die Standard Ports. Diese können, z.B. für weitere parallele Installationen am gleichen Rechner auch abweichen.

Siehe dazu auch: LW:/kieselstein/dist/bin/launch-kieselstein-main-server.bat bzw. .sh

Ergänzung an der pg_hba.conf

Hier sollte zusätzlich der gewünschte Netzwerkkreis eingetragen werden, mit dem auch ein Zugriff erlaubt ist. Beispiel:

  • host all all 192.168.xx.0/24 scram-sha-256

was bedeutet, dass aus dem Subnetz xx alle IP-Geräte die ein Passwort wissen auf die Datenbank zugreifen können.

Die pg_hba.conf findest du, je nach Betriebssystem unter:

Betriebssystem Pfad Bemerkung
Windows(R) LW:\Programm Files\PostgreSQL\VV\data\
Debian /etc/postgresql/14/main Achtung: Wenn englisch installiert, muss der datestyle auf ‘ios, dmy’ gestellt werden.
Ubuntu /etc/postgresql/14/main ev. muss zusätzlich in der postgresql.conf listen_addresses=’*’ gestellt werden
iOS ..

Ändern der IP-Adresse des Kieselstein ERP Servers

ACHTUNG: Wenn auf dem Kieselstein ERP Server die IP Adresse verändert wurde, so muss danach unbedingt der Kieselstein ERP Server neu gestartet werden.

Vorbereitung für die Client-Installation

Vom Client aus auf http://Kieselstein-ERP-SERVER-IP-Adresse:8080 gehen.

Auf der Willkommensseite findest du links unten den Link zu download clients.
hier werden alle Dateien angezeigt die im Server unter LW:\Kieselstein\dist\clients zur Verfügung stehen. D.h. üblicherweise werden hier die angepassten LW:\Kieselstein\dist\client Verzeichnisse als Client.zip einkopiert und somit dem Anwender zur Verfügung gestellt. Bewährt hat sich auch, dass hier ein aktuelles Java (das gleiche wie für den Server) für den Client hinterlegt wird.

Welche Java Version für den Server?

Der Basis-Link für das erprobte Zulu Java findest du unter https://www.azul.com/downloads/?package=jdk#zulu Hier dann für Server und Client nur Java 11 mit jdk-FX verwenden.

Windows Besonderheiten

Für Windows-User empfiehlt sich die .msi herunterzuladen.

Darauf achten, dass bei der Installation das Java Home gesetzt wird.

Prüfen, dass auch installiert durch Command Shell, Java -version

virtualisierte Betriebsumgebungen

Bitte achte massivst darauf, dass auch in virtuellen Betriebsumgebungen ausreichen Ram zur Verfügung steht. Es kommt leider immer wieder vor, dass manche IT-Betreuer glauben, der VM ausreichend Platz gegeben zu haben, es kommt dieses RAM aber bei der VM nicht an. Hier empfiehlt sich, eine fixe Speicher Zuweisung zu verwenden.

Windows Dienste starten

Für Start und Stop des Kieselstein ERP Servers geht man üblicherweise wie folgt vor:

  • Rechtsklick auf den Startbutton und Auswahl der Computerverwaltung
  • Auswahl der Dienste (Services)
  • Suchen des Kieselstein Main Server aus der Liste
  • Doppelklick und ändern des Starttypes auf Automatisch Verzögerter Start (da die PostgresQL vorher starten muss)

Gegebenenfalls den Kieselstein Service nun auch noch starten.

Linux Dienste starten

systemctl start kieselstein-main-server.service
systemctl stop kieselstein-main-server.service

Sollte, je nach Betriebssystem der Start des Dienstes nur direkt aus dem Dinesteverzeichnis möglich sein, hier eine Aufstellung wo du was findest.

Betriebssystem Pfad
Debian /etc/systemd/system/,

Server Dienst einrichten

  • Mit Administratorrechten eine Command Shell starten.
  • Es hat sich bewährt vorher einmalig den Service manuell zu starten, also:
    LW:\Kieselstein\dist\bin\launch-kieselstein-main-server.bat
    starten. Üblicherweise, je nach Datenbankgröße und Leistungsfähigkeit des Rechners kann es ein bisschen dauern bis der Dienst läuft. Man sieht das unter LW:\Kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments<br>Hier muss für alle drei Files deployed stehen. Wenn nicht siehe
  • nun testweise den Client aus LW:\Kieselstein\dist\client\bin\kieselstein-client.bat starten und mit Admin, admin anmelden.
    Geht die Anmeldung, d.h. man sieht die Button Bar so läuft der Zugriff grundsätzlich. Nun den Client beenden und dann den Server (mit Strg+C) stoppen und mit der Einrichtung des Serverdienstes fortsetzen.
  • aus LW:\Kieselstein\dist\bootstrap\service\windows\install-kieselstein-services.bat aufrufen
  • in die Dienste / Services wechseln und den Kieselstein-Dienst starten. Beim ersten Start hat sich die Überwachung des deployments bewährt. Sollte diese mit failed stehen bleiben, dann im log nachsehen. Hier kann man meist, auch wenn es mühsam ist, die Ursache finden.

Fehlermeldung beim Einrichten des Dienstes Kommt beim Einrichten des Dienstes die Meldung so bedeutet dies “nur”, dass bisher kein Kieselstein ERP Dienst eingerichtet ist (und nicht upgedated werden konnte).
Du findest trotzdem nun die neu eingerichteten in den Windows-Diensten.

Rootrechte unter Linux

Unter Linux ist es nicht üblich sich als Root anzumelden. Dafür gibt es die sogenannten Sudo Rechte. D.h. nur User die in der Sudo Liste eingetragen sind, können sich mit einem der folgenden Commands entsprechende Rootrechte holen.

Update

Für das Update deiner Kieselstein ERP Installation sind folgende Schritte erforderlich. Natürlich must du auch hier die entsprechenden Rechte haben.

  1. Herunterladen der aktuellen Version
  2. Vorbereitung des Installs indem das im Zip enthaltene dist Verzeichnis z.B. nach LW:\kieselstein\neu\dist kopiert wird.
    Hier kannst du auch gleich das Client\Lib entsprechend vorbereiten
  3. Stoppen des Kieselstein Dienstes, möglichst nachdem alle Anwender die Clients geschlossen haben (was sie nicht immer machen).
  4. Umbenennen des LW:\kieselstein\dist anhand der enthaltenen Version auf z.B. LW:\kieselstein\dist.1.0.26
  5. Verschieben des unter neu abgelegten Verzeichnisses auf LW:\kieselstein\dist
  6. Update der Datenbank aus dem Verzeichnis LW:\kieselstein\dist\bootstrap\liquibase mit
  • Linux: liquibase.sh update
  • Windows: run-liquibase.bat update

Bei Fehlern siehe

  • Sollte es zu Checksum-Probleme des Liquibase Datenbank-Verwaltungs-Managers kommen, so

    • Linux: liquibase.sh clear-checksums
    • Windows: run-liquibase.bat clear-checksums

    und danach erneut bei Datenbank-Update weiter.

  1. Übertragen des Client_lib Verzeichnisses aus der Zip LW:\kieselstein\dist\clients\kieselstein-client-develop.tar.gz nach LW:\kieselstein\Client\lib WICHTIG: Bitte immer das gesamte alte Lib-Verzeichnis löschen um Versionskonflikte der Libs zu vermeiden.
  2. Starten des Kieselstein Dienstes, dazu das deployments-Verzeichnis (LW:\Kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments) beobachten. Gegebenenfalls wie oben beschrieben, den Server auch manuell starten.
  3. Den Client (am Server) starten und anmelden.
  4. Alle Anwender Clients aktualisieren, dazu im Browser den Link auf den Client Download nutzen.

Linux Commandos

Eine Kurzfassung aller unter Debian durchzuführenden Commandos.
Voraussetzung das neue Release ist bereits heruntergeladen und liegt im Download Verzeichnis.
Du bist root / mit Root-Rechten (sudo -s) angemeldet

systemctl stop kieselstein-main-server.service
cd /opt/kieselstein
mv dist dist.alte_Versionsnummer
cd /home/BENUTZER/Downloads
tar -xvf kieselstein-distpack-1.1.13.tar.gz -C /opt/kieselstein
cd /opt/kieselstein
chmod -R 777 dist
cd /opt/kieselstein/dist/bootstrap/liquibase/
./liquibase.sh clear-checksums
./liquibase.sh update
systemctl start kieselstein-main-server.service

cd /opt/kieselstein/dist/clients
tar -xvf kieselstein-client-1.1.13.tar.gz

Danach noch die Startdatei, aus cd /opt/kieselstein/dist/clients/kieselstein-client-1.1.13/bin/ anpassen.
Ab der Version 1.1.13 können für Server und Sprache (locale) auf den Clients auch die Environmentvariablen verwendet werden:

Environment Beschreibung mögliche Werte
KIESELSTEIN_SERVER IP Adresse des Kieselsteinservers nur IP V4
KIESELSTEIN_LOCALE Die Anmeldesprache des Clients de_AT
de_DE
de_CH
en_US
it_IT
sl_
KIESELSTEIN_EXPERIMENTAL_OPENGL Verwendet die Grafikbeschleunigung true

Nach der Anpassung der Client Dateien diese wiederum komprimieren und den Benutzern unter … zur Verfügung stellen.

tar -cvf ../../client.tar

Somit findest du dann im Verzeichnis /opt/kieselstein/dist/clients das erzeugte client.tar, welches du an die Benutzerausrollen kannst. Nutze dafür http://dein_Kieselstein_server:8080

Fallback

Für den unwahrscheinlichen Fall, dass du das Datenbank-Update deines Kieselstein ERP nicht zum Laufen bekommst und unter der Voraussetzung, dass du nach obiger Anleitung / Reihenfolge vorgegangen bist, muss für das Fallback nur:

  1. Das neue dist Verzeichnis wieder nach z.B. LW:\kieselstein\neu\dist verschieben.
  2. die umbenannte Version wieder auf dist umbenennen
    Z.B.: von LW:\kieselstein\dist.1.0.26 auf LW:\kieselstein\dist

Sollte damit dein Kieselstein ERP nicht starten, so muss auch noch das gültige Datenbankupdate eingespielt werden. Da in aller Regel keine Änderungen an der Dokumentendatenbank durchgeführt werden, reicht der Datenbankrestore der KIESELSTEIN.
Tipp / Empfehlung:
Melde dich bitte bei der Technik, mit welchen Fehlern du nicht weiter gekommen bist.
Meist wünscht sich die Technik, dann auch ein entsprechendes Backup, der Datenbank.

3.1 - Installation Kieselstein ERP Server unter Debian mit Java11

Installation Kieselstein ERP Server unter Debian

Den Kieselstein ERP Server auf einem frischen Debian installieren.
Du kannst diese Anleitung auch für Ubuntu verwenden.

Dauer ca. 30 Minuten

Beachte:
Du bist entweder root, oder mit sudo -s zum root werden.

SSH-Server einrichten

OpenSSH Server installieren

apt update
apt upgrade
apt install openssh-server

Eigene IP Adresse

ip address

liefert die eigene IP-Adresse

Datenbank

Installation

apt-get install wget sudo curl gnupg2
sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
apt-get install postgresql-15

Anmerkung:
Unter Ubuntu steht nur mehr die postgresql-16 zur Verfügung.

apt-get install postgresql-16

Konfiguration anpassen

Mit vi oder anderen Texteditor öffnen.

vi /etc/postgresql/15/main/postgresql.conf

Hier müssen das Datums-Format und die Zeitzone umgestellt werden.

datestyle = 'iso, dmy'
timezone = 'Europe/Vienna'
# Auf die Timezone achten. Diese muss auf ‘Europe/Vienna’ (bzw. Berlin gerne auch Zuerich) stehen

Zugriffskonfiguration

Sollte ein Zugriff von einem anderen System auf die Datenbank notwendig sein, muss hier auch der listen_addresses Wert gesetzt werden (auf * für alle, bzw. die IP-Adressen, welche unbedingt Zugriff auf die Datenbank brauchen).

Gegebenenfalls auch den Zugriff von außen einrichten. D.h.:

  • Einrichten mit User postgres, PW: postgres
  • Ergänzen der /etc/postgresql/15/main/pg_hba.conf host all all 127.0.0.1/32 scram-sha-256 host all all 192.168.xx.0/24

Prüfen ob die Datenbank läuft:

systemctl is-enabled postgresql
systemctl status postgresql

Datenbank-Passwort setzen

Datenbank öffnen

sudo -u postgres psql

Passwort für den Datenbankbenutzer setzen:

ALTER USER postgres WITH PASSWORD '<Sicheres Passwort>';
exit

Hinweis: Es sollte ein sicheres Passwort verwendet werden, welches über einen Passwort-Generator erstellt wurde (Achtung das Passwort wird hier in folgenden Schritten noch benötigt!).

Für eine default Installation verwende als Passwort postgres.
Dieses ist in den standard Installationsscripten verwendet.
Wenn du das Passwort der Postgresinstallation ändern willst, beachte dass da dafür dann auch die Environment-Variable MAIN_DB_PASS und DOC_DB_PASS entsprechend setzen musst. Siehe dazu auch das unter LW:\kieselstein\dist\bin\launch-kieselstein-main-server.bat geschriebene.

Java installieren

Download der Java Version:

wget https://cdn.azul.com/zulu/bin/zulu11.74.15-ca-fx-jdk11.0.24-linux_amd64.deb

Alternativ kann der Download auch über die Azul-Seite erfolgen.
Siehe hierfür auch Java-Version.

Installation der Java Version:

Den folgenden Befehl im Download-Verzeichnis der Java-Version ausführen.

apt install ./zulu11.74.15-ca-fx-jdk11.0.24-linux_amd64.deb

Installation überprüfen:

java -version

Alternative Java Installation

www.azul.com, klick auf Downloads
runterscrollen und Java11 LTS, Debian, x86 64.bit, JDK FX auswählen

  • .deb herunterladen

  • Terminal öffen,

  • su - root

  • auf das home des herunterladenden Users wechseln und ins Downloads, z.B. /home/keg/Downloads

  • apt install ./zulu11.80.21-ca-fx-jdk11.0.27-linux_amd64.deb

  • danach mit java -version überprüfen

Installation Liquibase

Siehe bitte

Schriften Installieren

Damit die Reports funktionieren, muss die Schriftart Arial installiert werden. Dies kann unter Linux so durchgeführt werden.

wget http://ftp.de.debian.org/debian/pool/contrib/m/msttcorefonts/ttf-mscorefonts-installer_3.8_all.deb
apt install ./ttf-mscorefonts-installer_3.8_all.deb

Kommt beim Drucken die Meldung

Schriftart ’null’ am Server nicht verfügbar, so müssen die in den Reports verwendeten Schriften noch installiert werden.
Üblicherweise wird von Kieselstein ERP die Schriftart Arial verwendet. D.h. diese nachinstallieren. Dazu:

  1. herunterladen installationspaket: ttf-mscorefonts-installer_3.8_all.deb -> Download erlauben
  2. in das Downloadverzeichnis wechseln
  3. als su - root
    apt install ./ttf-mscorefonts-installer_3.8_all.deb
    lädt ein Menge Dateien von sourceforge herunter.
    Am besten danach den Server neu starten (shutdown -r now)

Umgebungsvariablen setzen

Mit vi oder nano oder anderem Texteditor öffnen.

vi /etc/environment

Wichtig! Die Umgebungsvariablen müssen OHNE export hinzugefügt werden.

  • JAVA_HOME=/usr/lib/jvm/zulu-fx-11-amd64
  • KIESELSTEIN_DIST=/opt/kieselstein/dist
  • KIESELSTEIN_DATA=/opt/kieselstein/data
  • MAIN_DB_PASS=(Sicheres Passwort welches für den Datenbank-Benutzer verwendet wurde)
  • DOC_DB_PASS=(Sicheres Passwort welches für den Datenbank-Benutzer verwendet wurde)

Optional kann auch die KIESELSTEIN_WILDFLY_CONFIG Umgebungsvariable gesetzt werden. Wichtig ist dabei das die Variable keine anderen Variablen beinhalten darf.

Bsp: KIESELSTEIN_WILDFLY_CONFIG=/opt/kieselstein/data/wildfly

Es müssen dann noch einmalig folgende files vom wildfly ordner in den KIESELSTEIN_WILDFLY_CONFIG kopiert werden.

/opt/kieselstein/dist/wildfly-26.1.2.Final/standalone/configuration/

  • application-roles.properties
  • application-users.properties
  • mgmt-groups.properties
  • mgmt-users.properties

Danach noch einen Applikations-User mit /opt/kieselstein/dist/wildfly-26.1.2.Final/bin/add-user.sh hinzufügen.

source /etc/environment

oder Server Neustarten

reboot

Installation Kieselstein ERP, Version (aktuelle Version):

Verzeichnisse anlegen:

mkdir /opt/kieselstein
mkdir /opt/kieselstein/dist
mkdir /opt/kieselstein/data

Herunterladen aktuelle Kieselstein ERP Version

Siehe auch

Dist-Paket über die bestehende Installation entpacken (In der Windows Eingabeaufforderung cmd.exe) Beispiel:

# Beispiel für Download des Dist-Pakets.
wget https://gitlab.com/kieselstein-erp/sources/kieselstein/-/jobs/7650408929/artifacts/raw/kieselstein-distpack/build/distributions/kieselstein-distpack-1.0.0-rc.1.tar.gz
# Beispiel für das Entpacken des Dist-Packets.
tar -xvf ./kieselstein-distpack-1.0.0-rc.1.tar.gz -C /opt/kieselstein

Datenbank Initialisieren

cd /opt/kieselstein/dist/bootstrap/liquibase/
./createdb.sh

Hier muss dann 4x das Passwort für den Postgres-Benutzer eingegeben werden.

Danach auch die default Datenbank auf den aktuellen Stand deines Kieselstein Servers heben.

./liquibase.sh update

Einrichten des Dienstes und starten des Servers

cd /opt/kieselstein/dist/bootstrap/service/linux
./install-kieselstein-services.sh

ausführen. Damit wird auch systemctl start kieselstein-main-server.service gestartet.
ACHTUNG: Es muss dafür das environment gesetzt worden sein

WildFly user hinzufügen

Wird für BasicAuth bei EDIFACT und CLEVERCURE benötigt.

KIESELSTEIN_DATA/wildfly Ordner erstellen und die folgenden Dateien aus KIESELSTEIN_DIST/wildfly-26.1.2.Final/standalone/configuration hineinkopieren.

  • application-roles.properties
  • application-users.properties
  • mgmt-groups.properties
  • mgmt-users.properties

NGINX Webserver (Optional)

Sollte für die REST-Schnittstelle ein eigener Port notwendig sein. Damit der Zugriff zum Beispiel über das Internet zur Verfügung gestellt werden kann oder bestehende Zeiterfassung-Terminals oder andere Anwendungen bereits den Port: 8280 verwenden kann ein Nginx-Webserver als Proxy hierfür installiert werden.

# Nginx-Webserver installieren:
apt install nginx
# Konfiguration für Kieselstein verlinken:
ln -s /opt/kieselstein/dist/bootstrap/nginx/kieselstein.conf  /etc/nginx/sites-enabled/kieselstein-main.cfg
# Testen, ob die Konfiguration gültig ist:
nginx -t
# Nginx-Webserver Dienst neustarten
systemctl restart nginx

Für das Freischalten im Internet sollte auf jeden Fall ein SSL-Zertifikat noch hinterlegt werden (siehe hier auch Configuring HTTPS servers bzw. Nginx-Webserver)

Zum Überpüfen, ob der Nginx funktioniert und mit dem Kieselstein kommuniziert, kann die Url: http://(Name oder IP-Adresse des Servers):8280/kieselstein-rest/services/rest/api/v1/system/ping aufgerufen werden.

läuft der Server ?

bewährt hat sich das Laufen des Servers in folgender Reihenfolge zu prüfen:

  1. /opt/kieselstein/dist/wildfly-26.1.2.Final/standalone/deployments/
    Hier müssen für alle drei Dateien auch .deployed Dateien stehen
  2. Prüfen, ob die RestAPI geht:
    einen Browser starten, http://localhost:8080/kieselstein-rest-docs/ muss die Restapi Dokumentation bringen. Bzw. auch mit dem Nginx-Port http://localhost:8280/kieselstein-rest-docs/ aufrufen (falls Nginx-Installiert wurde).
  3. Client starten und mit Admin, admin anmelden.

weiters zu tun

  • Backup einrichten
  • Einrichten der Zugriffe von anderen Rechner aus.

Praktische Werkzeuge

Midnight Commander

Ein praktisches Werkzeug ist auch der Midnight Commander.

apt install mc

DoubleCommander

Die Alternative dazu DoubleCommander

sudo apt install doublecmd-gtk

danach mit doublecmd starten

gedit

Natürlich kann man die Dateien mit dem Nano bearbeiten. Praktischer ist jedoch der gedit.

Anmelden und als root arbeiten

Da üblicherweise kein root installiert wird, man aber die Rechte braucht, einfach mit su root und dem eigenen PW anmelden.

IP Adresse des Rechners

ip address

Zur Verfügungstellung des Clients

  • nach /opt/kieselstein/dist/clients wechseln
  • su - root
  • tar -xvf ./kieselstein-client-1.1.9.tar.gz

Liefert dir im aktuellen Client-Versionsverzeichnis die bin und die lib.
Hier nun noch die beiden Start-Dateien anpassen.

Log-Dateien

Da man doch immer wieder sucht, wo denn die verschiedenen Log-Dateien zu finden sind

Was Wo Bemerkung
PostgresQL /var/log/postgresql üblicherweise rollierend für eine Woche

3.2 - Installation Kieselstein ERP Server unter Ubuntu

Installation Kieselstein ERP Server unter Ubuntu

Hier kommen die eventuellen Besonderheiten zu einer Ubuntu Installation rein. Aktuell bitte wie unter Debian beschrieben vorgehen.

www.azul.com/downloads/ … damit die Werbung nicht kommt

wenn apt nicht gegangen, weil z.B. zu wenig Rechte dann apt reinstall usw.

apt install postgresql holt die aktuellste Postgresversion derzeit 16 ACHTUNG: Installiert OHNE Passwort. daher su postgres psql damit bist du im Scripteditor commander nun

Ubuntu Version lsb_release -a

su postgres -> der Sudo geht irgendwie nicht Mit sudo su kannst du auch root-Rechte bekommen.

Anmerkung: Wenn das Kopieren per Fernwartung nicht geht, dann über den Firefox auf die docs.kieselstein-erp.org gehen und von dort die Kommandos herauskopieren. Im Ubuntu dann mit rechter Maustaste in den Eingabefeldern einfügen.

Je nach Maschine für das filldb sich etwas gedulden. Das kann dauern.

export KIESELSTEIN_JAVA_OPT_XMX=5G export KIESELSTEIN_JAVA_OPT_XMS=512m

reboot … = shutdown -r now

pg_hba.conf … /etc/posgresql/16/main/ph_hba.conf postgresql.conf … /etc/posgresql/16/main/postgresql.conf

firewall freischalten sudo ufw enable … aktiviert die Firewall (default) sudo ufw disable … deaktiviert die Firewall und erlaubt damit den Zugriff über alle Ports (z.B. pgadmin von außen)

3.3 - Installation Kieselstein ERP Server unter Windows(r)

Installation Kieselstein ERP Server unter Windows(r)

Hier findest du ergänzende Punkte zur Installation unter Windows. Die Standard-Installation ist im Hauptkapitel beschrieben.

Firewall

Nach der Installation und dem erfolgreichen Test daran denken, dass in der Regel, zumindest für den Port 8080.


8280 wenn auch die Rest-API verwendet werden sollte (Ab der Version 1.x.x nicht mehr erforderlich)

5432 wenn auch von innerhalb des Netzwerkes auf den PostgresQL zugegriffen werden sollte.

ACHTUNG: Sicherheit!!

Der Server startet nicht

Im Deploymentsverzeichnis (LW:\Kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments) steht kieselstein-0.0.11.ear.failed.
Ev. auch nur jackrabbit-jca-1.5.7.rar.failed.
So kann man in den beiden Dateien nachsehen.
Effizienter ist vermutlich in der LW:\Kieselstein\dist\wildfly-26.1.2.Final\standalone\log\server.log nachzusehen.
Dafür zuerst das log Verzeichnis löschen um nur die aktuellsten Einträge zu bekommen und dann den Server erneut starten, bis wiederum im Deploymentsverzeichnis das failed kommt.
Nun sucht man in der server.log am besten von oben nach dem ersten Eintrag mit Error. Meist findet man einen Eintrag wie z.B.:
2023-09-22 17:15:23,014 ERROR [org.apache.jackrabbit.core.fs.db.DatabaseFileSystem] (MSC service thread 1-3) failed to initialize file system: org.postgresql.util.PSQLException: FATAL: Passwort-Authentifizierung f�r Benutzer �postgres� fehlgeschlagen

Dies bedeutet, dass der Applikationsserver sich nicht an der Datenbank anmelden konnte. Versuche nun dich mittels PGAdmin auf der Datenbank mit postgres, postgres anzumelden. Ist dies nicht möglich, stimmt das Passwort der Datenbank nicht. Eventuell wurde bei der Installation des Postgresservers ein falsches oder kein Passwort vergeben. D.h. es muss das Passwort geändert werden. Wenn du das andere(falsche) Passwort kennst, melde dich mit diesem an und ändere das Passwort. Wenn du dieses nicht kennst, muss zuerst der Zugang zum PostgresQL-Server, auf dem Rechner, auf dem dieser läuft, so freigeschaltet werden, dass du dich auch ohne Passwort anmelden kannst. Dafür muss die pg_hba.conf angepasst werden. Diese findest du unter “LW:\Program Files\PostgreSQL\14\data". Ergänze diese nun abhängig von deiner IP-Konfiguration um

  • host all all 127.0.0.1/32 trust (IP V4)
  • host all all ::1/128 trust (IP V6) Wir raten für die Zugriffe innerhalb des eigenen Netzerkes generell nur IP V4 zu verwenden. Etwas anderes wären die Zugriffe ins www.

Nun muss der postgresql Dienst neu gestartet werden.

Wechsle nun als Administrator nach LW:\Program Files\PostgreSQL\14\bin
und rufe psql.exe -U postgres auf

Nun mit

\password postgres

das Passwort auf postgres setzen und dann mit

\q

Das Programm wieder verlassen.

Nun musst du dich auch im PGAdmin mit dem Passwort anmelden können.
Bitte beachte, dass ab PostgresQL 15 der PGAdmin 7 zum Einsatz kommen sollte.

Info:
Bei der Modifikation der pg_hba.conf auf IP V4 bzw. IP V6 achten! Kommt
psql: Fehler: Verbindung zum Server auf »localhost« (::1)
So fehlt der passende Eintrag in der pg_hba.conf

Info:
Nach diesen Änderungen empfiehlt sich auch die Verzeichnisse log, tmp, data aus dem standalone (LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone) zu löschen, damit die ganzen falschen Einträge weg sind.

Setzen Environmentvariable

  • path Erweiterung auf Postgres “LW:\Program Files\pgAdmin 4\v6\runtime”
  • KIESELSTEIN_DIST=LW:\kieselstein\dist
  • KIESELSTEIN_DATA=LW:\kieselstein\data
  • MAIN_DB_PASS=(Das oben definierte Datenbank-Passwort)
  • DOC_DB_PASS=(Das oben definierte Datenbank-Passwort)

Optional kann auch die KIESELSTEIN_WILDFLY_CONFIG Umgebungsvariable gesetzt werden. Wichtig ist dabei das die Variable keine anderen Variablen beinhalten darf.

Bsp: KIESELSTEIN_WILDFLY_CONFIG=LW:\kieselstein\data\wildfly

Es müssen dann noch einmalig folgende files vom wildfly ordner in den KIESELSTEIN_WILDFLY_CONFIG kopiert werden.

LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\configuration

  • application-roles.properties
  • application-users.properties
  • mgmt-groups.properties
  • mgmt-users.properties

Danach noch einen Applikations-User mit \opt\kieselstein\dist\wildfly-26.1.2.Final\bin\add-user.bat hinzufügen.

Es gibt noch weitere optionale Environment-Variablen welche in der README.md Datei bei den Start-Scripten (im KIESELSTEIN_DIST/bin/) beschrieben sind.

Achtung: Damit die Umgebungsvariablen für den Kieselstein-Dienst funktionieren, müssen diese als Systemvariablen hinterlegt werden.

3.3.1 - Update Kieselstein ERP Server von Version 0.2.x auf 1.x.x unter Windows

Migration von Kieselstein Version 0.2.x auf 1.x.x mit Java-11 Installation unter Windows.

Wenn eine bestehende Kieselstein Installation mit der Version 0.2.x vorhanden ist, können folgende Schritte für das Update auf Version 1.x.x durchgeführt werden.

Kieselstein Dienste deaktivieren

Dienste beenden

  • Beide Kieselstein Dienste (Kieselstein Main Server & Kieselstein REST Server) beenden
  • nun die Dienste deinstallieren, also:
    LW:\kieselstein\dist\bootstrap\service\windows\delete-kieselstein-services.bat

Backup des Kieselstein Dist-Verzeichnis erstellen

Das aktuell installierte Kieselstein in ein eigenes Verzeichnis mit der aktuellen Versionsnummer im Namen wegsichern.
Beispiel: LW:\kieselstein\dist auf LW:\kieselstein\dist.1.0.26 umbenennen

Neues Java Installieren

  • Azul Java 11 mit FX installieren Siehe hierfür auch Java-Version.

  • darauf achten, dass Java Home gesetzt wird

  • Prüfen, dass Java auch installiert wurde durch Command Shell,

    Java -version
    

Altes Java Deinstallieren (optional)

Über “Programme hinzufügen oder entfernen” nach JDK Suchen und die Java 8 Version deinstallieren.

Achtung: Diesen Schritt nur durchführen, wenn auf dem Server sicher keine andere Anwendung mehr das Java 8 JDK benötigt!
Auf jeden Fall ist sicherzustellen, dass die JAVA_HOME Variable auf das Neue JDK 11 gesetzt wurde:

Nicht mehr benötigte Anwendungen entfernen

Bestehende Kieselstein Dienste deinstallieren

Dafür das Skript LW:\kieselstein\dist\bootstrap\service\windows\delete-kieselstein-services.bat mit Administrator Rechten ausführen.

Reports sichern

Damit die Anwender-Reports nach dem Update wieder zur Verfügung stehen, muss der Reports-Ordner in ein neues Verzeichnis kopiert werden.
Hier muss der bestehende LW:\kieselstein\dist\wildfly-12.0.0.Final\server\helium\report nach LW:\kieselstein\dist\wildfly-26.1.2.Final\kieselstein\reports kopiert werden.

WICHTIG: Dies muss vor dem Entpacken des neuen Dist-Packets erfolgen, damit neuere Versionen der Standard-Reports richtig nachgezogen werden.

ACHTUNG: Die Definitionen für dein JasperStudio entsprechend übertragen und auch die Einstellungen im Jasper Studio entsprechend anpassen.
Dies idealerweise, bevor du die nachfolgenden Verzeichnisse löschst.

  • In Jasperstudio direkt.
    Eigenschaften des Projekts auf den neuen Pfad ändern.
    Z.B. von …LW:\kieselstein\dist\wildfly-12.0.0.Final\server\helium\report auf LW:\kieselstein\data\reports zu ändern.
    Denke auch daran dass die .classpath entsprechend anzupassen ist
    und denke an die Verlagerung der .settings, bin und an das Neu-Schreiben des .projects für JasperStudio.

Im Verzeichnis bin solltest du auch die aktuelle kieselstein-ejb-1.0.26.jar anstatt der bisherigen ejb.jar verwenden.

Alte Programmdateien löschen

Folgende Ordner können nun komplett gelöscht werden:

  • LW:\kieselstein\dist\apache-tomcat-8.5.93
  • LW:\kieselstein\dist\bin
  • LW:\kieselstein\dist\bootstrap
  • LW:\kieselstein\dist\service
  • LW:\kieselstein\dist\wildfly-12.0.0.Final

Installation Kieselstein ERP, Version (aktuelle Version):

Herunterladen aktuelle Kieselstein ERP Version

TODO Referenz auf die richtige Version setzen.

Siehe auch

Dist-Paket über die bestehende Installation entpacken (In der Windows Eingabeaufforderung cmd.exe) Beispiel

tar -xvf <pfad-zum-dist-packet>.gz -C LW:\kieselstein\

Datenbank Updaten

In der Command Shell in das Verzeichnis navigieren und mit liquibase den update Befehl durchführen:

cd LW:\kieselstein\dist\bootstrap\liquibase
run-liquibase.bat update

Hinweis: Wenn die bestehende Kieselstein Version kleiner als 0.0.13 ist:

Dann muss dem Liquibase noch mitgeteilt werden, dass es bereit die Grund-Datenstruktur gibt, somit muss vor dem Befehl run-liquibase.bat update noch folgender Befehl aufgerufen werden: run-liquibase.bat changelog-sync --label-filter="0.0.12"

Einrichten des Dienstes und starten des Servers

Mit Administrationsrechten das Install-Script LW:\kieselstein\dist\bootstrap\service\windows\install-kieselstein-services.bat ausführen.

NGINX Webserver (Optional)

Die Kieselstein-REST Schnittstelle wurde mit dem Update in den Wildfly integriert und ist somit auch über den Port: 8080 erreichbar.

Sollte es notwendig sein, dass diese wie bisher über den Port 8280 erreichbar ist, kann hier ein Nginx-Webserver als Proxy vorgeschaltet werden (Siehe NGINX Webserver)

läuft der Server?

Siehe Läuft der Server
Es hat sich bewährt nach einem Update, insbesondere nach dem Wechsel der Java Version, den Server manuell zu starten. D.h. mit administrativen Rechten das
LW:\kieselstein\dist\bin\launch-kieselstein-main-server.bat
auszuführen.

Beobachte hier die Ausgabe der Console. Erscheint hier:

2024-09-19 10:58:50,075 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 82) MSC000001: Failed to start service jboss.ra.deployer."jackrabbit-jca-2.22.0.rar": org.jboss.msc.service.StartException in service jboss.ra.deployer."jackrabbit-jca-2.22.0.rar": WFLYJCA0046: Failed to start RA deployment [jackrabbit-jca-2.22.0.rar]
    at org.jboss.as.connector.services.resourceadapters.deployment.
    ...
Caused by: org.jboss.jca.deployers.common.DeployException: IJ020056: Deployment failed: jackrabbit-jca-2.22.0.rar
    ...
Caused by: java.lang.UnsupportedClassVersionError: Failed to link org/apache/jackrabbit/jca/JCAResourceAdapter (Module "deployment.jackrabbit-jca-2.22.0.rar" from Service Module Loader): org/apache/jackrabbit/jca/JCAResourceAdapter has been compiled by a more recent version of the Java Runtime (class file version 55.0), this version of the Java Runtime only recognizes class file versions up to 52.0

this version of the Java Runtime only recognizes class file versions up to 52.0

so bedeutet dies, dass du vermutlich noch Java 8 auf deinem Server verwendest.
Gegebenenfalls willst du auf deinem Server, warum auch immer, auch noch Java 8 verwenden und hast daher beide Java Versionen installiert.
In diesem Falle muss das JAVA_HOME im Start-Batch
(LW:\kieselstein\dist\bin\launch-kieselstein-main-server.bat) gesetzt werden.
Z.B. schreibst du in Zeile 3 set JAVA_HOME=c:\Program Files\Zulu\zulu-11, also den Pfad auf dein Java 11 rein.

Dokumentendatenbank Workspace.xml anpassen

Wenn eine bestehende Dokumentendatenbank existiert, müssen hier folgende Parameter Werte (Achtung diese Werte sind 2x in der XML-Datei vorhanden) angepasst werden:

LW:\kieselstein\data\jackrabbit\workspaces\default\workspace.xml

  • driver: javax.naming.InitialContext
  • url: java:/JRDS

Und folgende Parameter können gelöscht werden:

  • user
  • password

Beispiel:

Alte XML-Datei

<?xml version="1.0" encoding="UTF-8"?>
<Workspace name="default">
    <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
        <param name="driver" value="org.postgresql.Driver"/>
        <param name="url" value="jdbc:postgresql://${org.kieselstein.db-doc.host}:${org.kieselstein.db-doc.port}/${org.kieselstein.db-doc.name}"/>
        <param name="schema" value="postgresql"/>
        <param name="user" value="postgres"/>
        <param name="password" value="postgres"/>
        <param name="schemaObjectPrefix" value="ws_"/>
    </FileSystem>
    <PersistenceManager class="org.apache.jackrabbit.core.persistence.bundle.PostgreSQLPersistenceManager">
        <param name="driver" value="org.postgresql.Driver"/>
        <param name="url" value="jdbc:postgresql://${org.kieselstein.db-doc.host}:${org.kieselstein.db-doc.port}/${org.kieselstein.db-doc.name}"/>
        <param name="user" value="postgres"/>
        <param name="password" value="postgres"/>
        <param name="schema" value="postgresql"/>
        <param name="schemaObjectPrefix" value="jcr_${wsp.name}_"/>
        <param name="externalBLOBs" value="false"/>
    </PersistenceManager>
    <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
        <param name="path" value="${wsp.home}/index"/>
    </SearchIndex>
</Workspace>

Neue XML-Datei:

<?xml version="1.0" encoding="UTF-8"?><Workspace name="default">
    <FileSystem class="org.apache.jackrabbit.core.fs.db.DbFileSystem">
        <param name="driver" value="javax.naming.InitialContext"/>
        <param name="url" value="java:/JRDS"/>
        <param name="schema" value="postgresql"/>
        <param name="schemaObjectPrefix" value="ws_"/>
    </FileSystem>
    <PersistenceManager class="org.apache.jackrabbit.core.persistence.pool.PostgreSQLPersistenceManager">
        <param name="driver" value="javax.naming.InitialContext"/>
        <param name="url" value="java:/JRDS"/>
        <param name="schema" value="postgresql"/>
        <param name="schemaObjectPrefix" value="jcr_${wsp.name}_"/>
        <param name="externalBLOBs" value="false"/>
    </PersistenceManager>
    <SearchIndex class="org.apache.jackrabbit.core.query.lucene.SearchIndex">
        <param name="path" value="${wsp.home}/index"/>
    </SearchIndex>
</Workspace>

weiters zu tun

  • Clients Updaten (diese benötigen jetzt auch Java 11) siehe auch
  • Wenn Nginx nicht installiert wurde bei allen Zeiterfassung-Terminals oder anderen Programmen, welche die REST-Schnittstelle verwenden, den Port auf 8080 ändern.

Empfehlung:
Insbesondere für die Tests in der ersten Zeit, sollte für ein eventuelles Fallback auf den Clients sowohl die Version für den Java 8 Server als auch für den Java 11 Server parallel vorgehalten werden. Damit man, im schlimmsten Falle, schnell auf die Vorgängerversion zurückwechseln kann.

3.4 - Installation Kieselstein ERP Server unter Windows Java11

Installation Kieselstein ERP Server unter Windows

Den Kieselstein ERP Server auf einem frischen Windows installieren.

Installation Datenbankserver

Es werden aktuell ausschließlich PostgresQL Version 14 und 15 unterstützt. MS-SQL wird nicht unterstützt. Für eine eventuelle Konvertierung deiner MS-SQL Datenbank wende dich bitte an die Kieselstein ERP eG. Neuere PostgresQL Versionen können funktionieren, sind aber aktuell von uns nicht freigegeben.
Bei der Installation darauf achten, dass nur PostgresSQL Server und die Command Line Tools installiert werden.



Bei der Installation muss auch das Passwort für den User Postgres angegeben werden.
Hinweis: Es sollte ein sicheres Passwort verwendet werden, welches über einen Passwort-Generator erstellt wurde (Achtung das Passwort wird hier in folgenden Schritten noch benötigt!).

Java installieren

  • Azul Java 11 mit FX installieren Siehe hierfür auch Java-Version.
  • darauf achten, dass Java Home gesetzt wird

  • Prüfen, dass Java auch installiert wurde durch Command Shell,
    Java -version
    

Setzen Environmentvariable

  • path Erweiterung auf Postgres “LW:\Program Files\pgAdmin 4\v6\runtime”
  • KIESELSTEIN_DIST=LW:\kieselstein\dist
  • KIESELSTEIN_DATA=LW:\kieselstein\data
  • MAIN_DB_PASS=(Das oben definierte Datenbank-Passwort)
  • DOC_DB_PASS=(Das oben definierte Datenbank-Passwort)

Optional kann auch die KIESELSTEIN_WILDFLY_CONFIG Umgebungsvariable gesetzt werden. Wichtig ist dabei das die Variable keine anderen Variablen beinhalten darf.

Bsp: KIESELSTEIN_WILDFLY_CONFIG=LW:\kieselstein\data\wildfly

Es müssen dann noch einmalig folgende files vom wildfly ordner in den KIESELSTEIN_WILDFLY_CONFIG kopiert werden.

LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\configuration

  • application-roles.properties
  • application-users.properties
  • mgmt-groups.properties
  • mgmt-users.properties

Danach noch einen Applikations-User mit \opt\kieselstein\dist\wildfly-26.1.2.Final\bin\add-user.bat hinzufügen.

Es gibt noch weitere optionale Environment-Variablen welche in der README.md Datei bei den Start-Scripten (im KIESELSTEIN_DIST/bin/) beschrieben sind.

umgebungs_variablen.png

Achtung: Damit die Umgebungsvariablen für den Kieselstein-Dienst funktionieren, müssen diese als Systemvariablen hinterlegt werden.

Installation Liquibase

Siehe bitte

Installation Kieselstein ERP, Version (aktuelle Version):

Herunterladen aktuelle Kieselstein ERP Version

Siehe auch

Dist-Paket über die bestehende Installation entpacken (In der Windows Eingabeaufforderung cmd.exe) Beispiel:

tar -xvf <pfad-zum-dist-packet>.gz -C LW:\kieselstein\

Datenbank Initialisieren

Die installierte LW:\kieselstein\dist\bootstrap\liquibase\createdb.bat ausführen. Hier muss dann 4x das Passwort für den Postgres-Benutzer eingegeben werden.

In der Command Shell in das Verzeichnis navigieren und mit liquibase den update Befehl durchführen:

cd LW:\kieselstein\dist\bootstrap\liquibase
run-liquibase.bat update

Einrichten des Dienstes und starten des Servers

Mit Administrationsrechten das Install-Script LW:\kieselstein\dist\bootstrap\service\windows\install-kieselstein-services.bat ausführen.

NGINX Webserver (Optional)

Sollte für die REST-Schnittstelle ein eigener Port notwendig sein. Damit der Zugriff zum Beispiel über das Internet zur Verfügung gestellt werden kann oder bestehende Zeiterfassung-Terminals oder andere Anwendungen bereits den Port: 8280 verwenden, kann ein Nginx-Webserver als Proxy hierfür installiert werden.

Mit Administrationsrechten das Install-Script LW:\kieselstein\dist\bootstrap\service\windows\install-kieselstein-nginx-service.bat ausführen.

Für das Freischalten im Internet sollte auf jeden Fall ein SSL-Zertifikat noch hinterlegt werden (siehe hier auch Configuring HTTPS servers bzw. Nginx-Webserver)

Zum Überprüfen, ob der Nginx funktioniert und mit dem Kieselstein kommuniziert, kann die Url: http://(Name oder IP-Adresse des Servers):8280/kieselstein-rest/services/rest/api/v1/system/ping aufgerufen werden.

TODO Hinterfragen, ob die Config gleich ins richtige Verzeichnis vom Dist-Pack geladen werden kann oder ob das manuell gemacht werden muss.

läuft der Server?

bewährt hat sich, das Laufen des Servers in folgender Reihenfolge zu prüfen:

  1. LW:\kieselstein\dist\wildfly-26.1.2.Final\standalone\deployments/
    Hier müssen für alle drei Dateien auch .deployed Dateien stehen
  2. Prüfen ob die RestAPI geht:
    einen Browser starten, http://localhost:8080/kieselstein-rest-docs/ muss die Restapi Dokumentation bringen. Bzw. auch mit dem Nginx-Port http://localhost:8280/kieselstein-rest-docs/ aufrufen (falls Nginx-Installiert wurde).
  3. Client starten und mit Admin, admin anmelden.

weiters zu tun

  • Backup einrichten
  • Einrichten der Zugriffe von anderen Rechner aus.

Server startet nicht, was tun?

Wenn du Daten von anderen Installationen übernimmst, muss beim ersten Start deines Servers der Index der Dokumentendatenbank neu aufgebaut werden. Dies wird grundsätzlich vom Server unterstützt. Es kann aber unter Umständen so lange dauern, dass der Server von sich aus abbricht.
D.h. gegebenenfalls den Server mehrfach starten und oder zusätzlich das Timeout temporär höher drehen. D.h. im launch-kieselstein-main-server(.bat)

Linux (ca Zeile 60)

MAIN_SERVER_OPTS="${MAIN_SERVER_OPTS} -Djboss.as.management.blocking.timeout=3600"

Windows (ca Zeile 90)

set MAIN_SERVER_OPTS=%MAIN_SERVER_OPTS% -Djboss.as.management.blocking.timeout=3600

hinzufügen. Erhöht das Timeout auf eine Stunde.

Server manuell stoppen / starten

Manchmal hat man in Windowsumgebungen das Problem, dass über die Dienste-Konsole der Kieselstein Service nicht endgültig gestoppt werden kann.
Mit den nötigen Administrator Rechten kann mit

net stop "Kieselstein Main Server"

Der Dienst gestoppt werden.

3.5 - Installation Kieselstein ERP Server unter macOS

Installation Kieselstein ERP Server unter macOS

Hier findest du nur in textlicher Form zusammengestellt, wie eine erste Installation unter MacOS erfolgen könnte.

Wir freuen uns, wenn ein entsprechender Profi, diese Beschreibung ergänzt.

Diese Installation baut auf der Kieselstein ERP Version 1.0.1 auf.

Wir haben auch einige Hintes für die Anwender anderer Betriebssysteme mit dazugegeben.

Wenn man im Finder verschiedene Devices usw. nicht findet, dann am Desktop auf Gehe Zu (Computer) und dann dieses Device links reinziehen. Ab dem Zeitpunkt ist es da.

Ab OS X Version 8? steht der Launcher zum Starten der Dienste zur Verfügung launchctl start/stop (dienst) mit list sieht man alle Dienste und die die eine PID haben laufen

find / -name xxx*.* findet alle Dateien ab Root

Rechtsklick mit der Maus bringt Einsetzen (aus der Zwischenablage)

prüfen welche Prozesse laufen

  • ps aux | grep postgres
  • Programme, Dienstprogramm, Aktivitätsanzeige
    ev. aus dem /Library das Postgres komplett entfernen

wo bin ich?

mit pwd bekommt man den aktuellen Pfad im Terminal, auf dem man steht

Downloads

idealerweise die Downloads über den Finder aus dem Download Verzeichnis starten

IP Adresse: ifconfig

Root user

Den Root User gibt es nicht wirklich, aber
sudo -s eigenes Password -> damit ich ausreichend Rechte habe

Postgres deinstallieren

??? open /Library/PostgreSQL/Version/uninstall-postgresql.app/Contents/MacOS/installbuilder.sh Sollte die Deinstallation nicht gehen, das Verzeichnis entfernen. Ev. dazu über Dienstprogramme, Aktivitäten den laufenden Prozess killen.

Postgres 15 installieren

  • Bin als Administrator / mit administrativen Rechten angemeldet
  • Download PostgresVersion 15.x
  • dmg Datei aus Download öffnen und installieren. Auf den Port und das PW achten
  • Pfad: /Library/PostgreSQL/15
    ohne Stack Builder aber mit pgAdmin 4

Nach der Installation von PostgreSQL 15 findest du diesen direkt im Finder

Anpassen der Konfiguration

Je nach MAC Version und Postgresversion musst du die pg_hba.conf und die postgresql.conf anpassen. Siehe

Download Kieselstein ERP

von GitLab anscheinend nur mit Safari

Download Java11

Java11 auf die richtige Architektur achten (X64 oder ARM) JDK FX !!

altes / falsches Java deinstallieren

Java deinstallieren (laut Oracle)

  • Klicken Sie im Dock auf das Finder-Symbol.
  • Klicken Sie auf den Ordner Utilities
  • Doppelklicken Sie auf das Terminal-Symbol
  • Kopieren und fügen Sie die folgenden Befehle im Terminalfenster ein:
sudo rm -fr /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin
sudo rm -fr /Library/PreferencePanes/JavaControlPanel.prefPane
sudo rm -fr ~/Library/Application\ Support/Oracle/Java

Versuchen Sie nicht, Java zu deinstallieren, indem Sie die Java-Tools aus /usr/bin entfernen. Dieses Verzeichnis ist Teil der Systemsoftware. Änderungen werden von Apple zurückgesetzt, wenn Sie das nächste Mal ein BS-Update durchführen.

Verzeichnisse löschen mit File-Inhalten

rm -r Path

Kieselstein installieren

  • /opt/kieselstein anlegen
  • cd /opt
  • mkdir kieselstein
  • cd kieselstein ins download wechseln, z.B. Finder und das .tar mittels Doppelklick entpacken
    Das Dist kopieren und in der Hauptmenüleiste (ganz oben) mit Gehe Zu auf /opt/kieselstein wechseln und dort einsetzen (dorthin kopieren)

Environment-Variablen

Nun die Environmentvariablen anlegen / ergänzen

Laut einigen Beschreibungen sind diese für alle User auf /etc/bashrc … das File gegebenenfalls mit Nano anlegen export PATH=$PATH:/Library/PostgreSQL/15/bin export KIESELSTEIN_DATA=/opt/kieselstein/data/ export KIESELSTEIN_DIST=/opt/kieselstein/dist/ Terminal neu starten ev. mit printenv die ganzen environment variablen prüfen

ABER Es müssen diese auf meinen Mac in die bash-profile. Also:

  • ~/.bash-profile eingeben. Damit findet man auch wo das File ist und dann ergänzen
    mit Export, so wie oben beschrieben und wichtig danach
    mit source ~/.bash-profile aktivieren

liquibase

herunterladen und installieren. Landet auf /usr/local/opt/liquibase

Datenbank einrichten
  • Terminal neu starten
  • im Terminal nun auf /opt/kieselstein/dist/bootstrap/liquibase wechseln
  • createdb.sh ausführen und 4x pw eingeben
  • dann aus dem Verzeichnis das ./liquibase.sh ausführen

Es dürfen keine Fehler kommen und es müssen 18 oder mehr updates ausgeführt angezeigt werden

Client am gleichen MAC starten

Im Finder aus /opt/kieselstein/dist/clients, das Kieselstein-client…tar mit Rechtsklick und Archivierungsprogramm öffnen. Damit bekommst du das in das clients mit den Unterverzeichnissen bin und lib

Wenn mehrfach verteilt werden sollte, die kieselstein-client.sh die IP Adresse anpassen

Nun den KES Server starten

auf /opt/kieselstein/dist/bin wechseln
und launch-kieselstein-main-server.sh

mit gehe zu auf deployment wechseln und prüfen ob startet

Nun den Client starten.

Um das aus dem Finder zu starten, musste du die Sicherheitseinstellungen erweitern D.h. Öffnen einer App durch Aussetzen der Sicherheitseinstellungen

  • Suche im Finder auf deinem Mac nach der App, die du öffnen möchtest.
  • Klicke bei gedrückter Taste „ctrl“ auf das Symbol der App und wähle „Öffnen“ aus dem Kontextmenü aus.
  • Klicke auf „Öffnen“.
  • Die App wird als Ausnahme zu deinen Sicherheitseinstellungen gesichert, sodass du sie künftig wie jede autorisierte App durch Doppelklicken öffnen kannst.

ToDos

zu klären sind noch folgende Dinge

  • a.) wie den Dienst am MAC einrichten
  • b.) wie das Desktop Icon einrichten

Zusatz-Infos

  • Arbeitet man nicht auf einer echten MAC Tastatur sondern auf einer PC-USB Tastatur
    • AltGR+7 = | Pipe

3.6 - Update

Muss ich regelmäßig updaten und wenn ja, was?

Für die Beschreibung des Server-Updates deiner Kieselstein ERP Installation siehe die betriebssystemspezifischen Updates in den Unterkapiteln

Allgemeine Punkte zum Thema Updaten / Aktualisieren

Da wir in der Praxis durchaus auch erleben, dass einfach ohne jegliche Notwendigkeit Updates eingespielt werden, hier unsere Gedanken und Informationen dazu.

Wir gehen hier davon aus, dass dein Kieselstein ERP-Server in einem sicheren Netzwerk betrieben wird.
Die nachfolgenden Infos sind für Server, die vorne an der Front (= WorldWideWeb) stehen, wie z.B. WebServer, nicht zutreffend.

  1. Wozu muss aktualisiert werden? Gibt es einen wichtigen Grund?
    Nur dann sollte ein Update eingespielt werden.
    Es gilt der alte Grundsatz, never touch a running system!
    Wir können dies nur bestätigen.

  2. Die Kieselstein ERP eG mit Ihren Consultants sind KEINE IT-Betreuer.
    Bitte suche dir einen sehr guten IT-Betreuer. Der auch etwas von IT-Infrastruktur versteht und auch weiß, warum man mechanisch getrennte Backups braucht.

  3. Welchen Wert hat dein ERP System für dein Unternehmen?
    Welche Dinge werden passieren, wenn dein ERP nicht verfügbar ist?

  • ich weiß nicht was ich heute produzieren sollte
  • ich weiß nicht welche Waren ich einkaufen sollte
  • ich kann keinen Kunden anrufen und ihm erklären, dass er seine Lieferung später bekommt
  • ich habe keine Zeiterfassung meiner Mitarbeiter:innen und auch nicht meiner Maschinen
  • das kann man noch lange fortsetzen

Wenn nun durch die, bei manchen Menschen ausgeprägte Update-Manie, täglich / wöchentlich neue Versionen in das Live-System eingespielt werden, das oft noch ohne ein qualifiziertes Backup / Fallback zu haben, dein ERP System, warum auch immer, nicht mehr funktioniert, so können wir von der Kieselstein ERP eG dazu nur sagen, Pech gehabt. Hoffentlich etwas dazu gelernt.

Unsere Techniker:innen sind Programmierer oder Consultants, aber keine IT-Leute die sich mit Servern und PC’s mehr als notwendig herum ärgern.

Wie alt darf meine Kieselstein ERP Installation sein

Dafür gibt es mehrere Dinge zu beachten.

Wenn deine Installation zu deiner / eurer Zufriedenheit läuft, keine gesetzlichen Änderungen anstehen usw. besteht kein Grund ein Update durchzuführen. Bedenke dabei, dass sich die IT-Welt immer schneller weiterentwickelt. So kann es durchaus sein, dass ein Betriebssystemupdate auch ein Update deines Kieselstein ERP erzwingt. Plane solche Dinge langfristig.

Macht aber deine Installation Problem, so stelle bitte sicher, dass du die aktuelle Kieselstein ERP Version im Einsatz hast. Technische Änderungen werden nur aufbauend auf der aktuellen Version durchgeführt. Sollten mit der aktuellen Version Probleme / Wünsche gegeben sein, so beachte dazu auch das unter Supportanfrage geschriebene.

Richtige Update-Vorgehensweise

  1. Ist das Update wirklich notwendig
  2. erstelle ein vollwertiges Backup. Du musst im Falle des Falles auf diesen Stand zurückstellen können.
    Manche unserer Mitglieder machen das in dem Sinne, dass die VM (virtuelle Maschine) des Echtsystems gesichert und kopiert wird. Beachte dazu das Thema vollwertige Sicherung einer VM mit der PostgresQL!
    Nun können am Echtsystem die Updates durchgeführt werden. Sollten sich Probleme herausstellen, kann man auf die qualifizierte und vollwertige Sicherung zurückgreifen.
    Oder es werden auf der kopierten VM die notwendigen Tests durchgeführt und erst danach die Updates am Echtsystem ausgerollt.
  3. Selbstverständlich ist dein IT-Betreuer greifbar und deine Tests der neuen Version werden zu normalen Bürozeiten durchgeführt und sind nicht zeitkritisch. D.h. ob eine Fehlerbehebung einige Tage dauert, ist nicht relevant.

Was mache ich, wenn mein System gecrasht ist

In solchen Fällen, welche in der Regel, bei gut gepflegter Hardware, sehr sehr selten auftreten, helfen wir nach besten Kräften. Wir wollen grundsätzlich, dass die Systeme laufen. So ist es uns kürzlich gelungen, ein gecrashtes Windowssystem mit guten vorhandenen Backupdaten innerhalb von wenigen Stunden, nachdem der neue Server wieder zur Verfügung gestanden ist, zum Laufen zu bringen.

Dein Kieselstein ERP läuft immer auf einem Server, auch wenn der Rechner mit vielleicht etwas geringerer Leistung ausgelegt ist.
Server sind immer mit gespiegelten Platten oder Raid-Platten ausgestattet. Es läuft eine Festplattenüberwachung und die Meldungen des Überwachungssystems werden erst genommen und umgehend, raschest möglich, durch deinen IT-Betreuer beseitigt.
Dass ein qualifiziertes und verifiziertes Backup zur Verfügung steht, ist selbstverständlich.

Zusammenfassend:

Seid euch des Wertes eurer Daten und Systeme bewusst. Durch die Update Manie wird nur eine Geringschätzung den eigenen Systemen gegenüber zum Ausdruck gebracht.

Update Prozess für dein Kieselstein ERP:

Vor jedem Update Prozess muss sowohl von der Datenbank als auch von den File-Systemen ein Backup gemacht werden.

Update Schritte je Betriebssystem:

Debian Update
Windows Update

Clients

Nach dem Update des Servers müssen auch die Clients wieder aktualisiert werden. Siehe hierfür bitte Installation Clients.

Sollte die Version des Kieselstein-Clients nicht mit der Version des Servers oder der Datenbank übereinstimmen, kommt eine entsprechende Fehlermeldung und kann die Anmeldung nicht durchgeführt werden.

Fehlermeldungen mit Client-Version 0.0.13 oder kleiner: Dies wird nach dem Anmeldeversuch bei Versionen, welche vor der Versionierung erstellt wurden, angezeigt. Hier muss das Client-Programm aktualisiert werden.

Ab Kieselstein Version 0.0.13 werden die jeweiligen Versionen angezeigt und die Anmeldung verhindert:

Troubleshooting

Wenn die Datenbankversion nicht mit der Wildfly Installation übereinstimmt, kommt beim Starten des Clients folgende Fehlermeldung: bzw. bei einem Umstieg von einer Version vor 0.0.13:

Am Server wird hier auch ein Fehler geloggt (kieselstein-dist/wildfly-26.1.2.Final/standalone/log/server.log)

2024-02-28 09:10:26,607 ERROR [com.lp.server.system.ejbfac.SystemFacBean] (EJB default - 8) Database version may not match server version (0.0.14)! Make sure the database was updated.: javax.persistence.PersistenceException: org.hibernate.exception.SQLGrammarException: could not extract ResultSet
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1692)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.convert(AbstractEntityManagerImpl.java:1619)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:1106)
        at org.hibernate.jpa.spi.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:1033)
        at org.jboss.as.jpa.container.AbstractEntityManager.find(AbstractEntityManager.java:213)

Hier muss der Dienst wieder gestoppt werden und das Liquibase update durchgeführt werden.

Releasehinweise

TODO Is a comming feature! In Zukunft kann es sein, dass nach einem Versionsupdate manuelle Datenbereinigungen durchgeführt werden müssen. Sollte eine solche Datenbereinigung notwendig sein, wird nach der Anmeldung eines Benutzers eine Liste (wenn mehrere) der noch nicht durchgeführten Aktionen angezeigt. Die Punkte in der Releasehinweise-Tabelle können nur von dem Kieselstein Admin-Benutzer als erledigt markiert werden. Solange noch nicht erledigte Releasehinweise vorhanden sind, werden diese jedem Benutzer bei der Anmeldung angezeigt.

3.6.1 - Update Kieselstein ERP Server unter Windows Server

Update Kieselstein ERP Server unter Windows Server

Für die Kurzfassung siehe

Nachtragen PostgresQL Runtime Pfad

  • Rechtsklick auf das Windows Start-Symbol
  • System
  • suche nun erweiterte Systemeinstellungen. Je nach Windows-Version ist dies optisch an einem anderen Platz, aber immer unter System Info zu finden
  • Umgebungsvariablen anklicken
  • Suche nun im unteren Bereich (Systemvariablen) die Variable Path und klicke auf “Bearbeiten”
  • Hier muss nun, abhängig von der verwendeten pgAdmin Version der Pfad auf die pgAdmin runtime eingetragen sein. Bei pgAdmin 4 V7 ist dies “c:\Program Files\pgAdmin 4\v7\runtime”. Bei pgAdmin 4 V8 ist dies “c:\Program Files\pgAdmin 4\runtime”.
  • Wenn alles eingetragen ist, beende zumindest den Umgebungsvariablen und den Systemeigenschaften Dialog.
  • starte ein neues CMD-Fenster und gib psql (+ Enter) ein. Es muss die Abfrage des psql nach dem Benutzerpasswort kommen. Kommt eine Meldung mit *Der Befehl “psql” ist entweder falsch ….. *so ist deine Pfad-Definition falsch, womit auch der Serverstart nicht funktionieren wird.

Funktioniert dies, würde ich mit der oben beschriebenen Prüfung fortfahren.

Probleme / Lösungen

Nachfolgend eine Sammlung von bisher bekannten Problemen und deren Lösungen beim Updateprozess. Vom Grundgedanken her gelten diese Dinge für beide Betriebssysteme, auch wenn die Aufrufe und die erforderlichen Betriebssystemspezifischen Rechte durchaus unterschiedlich sein können.

Liquibase meldet Checksum Konflikt

Während des Liquibase Updates kommen Fehlermeldungen. Wie z.B.:

Starte Liquibase am 08:47:40 (Version 4.28.0 #2272, kompiliert am 2024-05-16 19:00+0000)
Liquibase Version: 4.28.0
Liquibase Open Source 4.28.0 by Liquibase
ERROR: Exception Details
ERROR: Exception Primary Class: ValidationFailedException
ERROR: Exception Primary Reason: Validierung war nicht erfolgreich:
Bei 1 ChangeSets stimmt die Prüfsumme nicht mehr mit der Historientabelle überein.
changelogs/0.1.1/punkt_ist_dezimaltrenner_parameter.xml::add-parameter::KSE was:
> 9:2e4dc472a79dcf110b919b796195b677 but is now: 9:ff143e7c43a38123ddfb731c38d613c9

Siehe dazu
bzw.

Clear Checksums

run-liquibase.bat clear-checksums (für Linux ./liquibase.sh clear-checksums)

Um eventuell falsche Checksums zu löschen und damit weiter zu kommen.
Aufruf von LW:\kieselstein\dist\bootstrap\liquibase\ aus.
Siehe zusätzlich auch –help

Was macht das Clear Checksums, wann ist es erforderlich

Bei jedem Datenbankupdate wird über die Commandos der durchzuführenden Änderungen (z.B. LW:\kieselstein\dist\bootstrap\liquibase\changelogs\1.0.28) eine Checksumme gebildet. Diese Checksumme wird in der Änderungsprotokollierung (databasechangelog) eingetragen.
Werden nun nachträglich nach einem Datenbankupdate Änderungen an der Beschreibung / den Scripten für das Datenbankupdate durchgeführt, so ändert sich automatisch damit die Checksumme über die Dateien.
Damit wird erreicht, dass jegliche Änderung am Datenbankupdate erkannt wird. Dies dient vor allem zur Sicherheit, dass eben nachträgliche Änderungen erkannt werden. Ob diese Änderung nun tatsächlich durchzuführen ist, muss vom Updatenden entschieden werden.

Zusatzinfo:
Bis zu Version 1.0.28 wurde beim Clear Checksums falsche Werte zurückgeschrieben, womit in sehr wenigen Fällen falsche Fehlermeldungen entstanden sind.

Derzeit kann das Clear Checksums jederzeit durchgeführt werden.

Die Checksum in der Tabelle manuell richtig stellen

Ich habe dafür folgendes Script verwendet. Dieses ist sicherlich nicht vollständig und muss gegebenenfalls auf die aktuelle Situation angepasst werden. Die Vorgehensweise sollte damit aber klar sein.
ACHTUNG: Ob diese Vorgehensweise die Konsistenz deiner Daten bzw. die Konsistenz deiner Datenbank zerstört, kann hier nicht geklärt werden. Achte auf die Inhalte der Liquibase Änderungsscripte. Es gilt dies auch für das Clear Checksums

– korrigieren der checksum der zwischenversion der 0.1.1

update databasechangelog set md5sum = ‘9:ff143e7c43a38123ddfb731c38d613c9’ where md5sum=‘9:2e4dc472a79dcf110b919b796195b677’;

update databasechangelog set md5sum = ‘9:ff143e7c43a38123ddfb731c38d613c9’ where md5sum=‘9:67af6ebc94a79ccc6073d7044b4fe2dc’;

Spalte ist bereits vorhanden

Es kommt beim Update eine Meldung, dass die Spalte xy bereits in der Datenbank eingetragen ist.
Wenn man sich sicher ist, dass in der Tabellen Spalte KEINE Einträge sind, kann man diese einfach löschen und danach das Update erneut ausführen.
Ist dem nicht so, so kann man das betreffende XML entsprechend auskommentieren. Die Update-XMLs, welche Versionsweise organisiert sind, findest du unter
LW:\kieselstein\dist\bootstrap\liquibase\changelogs\Versionsnummern

Hier das betreffende XML heraussuchen und z.B. die Extension mit .nix ergänzen. Danach das Update erneut ausführen.

Passend zu obiger Fehlermeldung:
LW:\kieselstein\dist\bootstrap\liquibase\changelogs\0.0.14\los_material_vollstaendig_parameter.xml

3.6.2 - Update Kieselstein ERP Server unter Debian

Update Kieselstein ERP Server unter Debian

Applicationsserver Updaten

  • Dist-Pack auf den Server kopieren
  • Dienste beenden
    • systemctl stop kieselstein-main-server.service
    • systemctl stop kieselstein-rest-server.service
  • Alte Programmdateien löschen:
    • rm /opt/kieselstein/dist/wildfly-*.Final/standalone/deployments/*.ear
    • rm /opt/kieselstein/dist/wildfly-*.Final/standalone/deployments/*.war
    • rm /opt/kieselstein/dist/wildfly-*.Final/standalone/deployments/*.rar
    • rm /opt/kieselstein/dist/wildfly-*.Final/standalone/deployments/*.deployed
    • rm /opt/kieselstein/dist/apache-tomcat-*/webapps/*.war
      • und auch alle Verzeichnisse mit kieselstein-rest##. löschen
  • Dist-Paket über die bestehende Installation entpacken
    • tar -xvf <pfad-zum-dist-packet>.gz -C /opt/kieselstein
  • Client-Scripte anpassen
    • Es muss geprüft werden, ob es manuelle Änderungen im Client-Paket für die Startskripte gab und diese eventuell bei den neuen Startscripten nachziehen (Hostname und Splashscreen zum Beispiel).
    • Alte Client-Scripte löschen oder klar markieren als OLD (Siehe im Verzeichnis /opt/kieselstein/dist/clients/)
  • Berechtigungen wieder für den Kieselstein Ordner setzen
    • chown -R kieselstein:kieselstein /opt/kieselstein
  • Wenn im dist-Verzeichnis mehrere Tomcat oder Wildfly Versionen enthalten sind, prüfen welche verwendet wird und die alten löschen.
    • Prüfen welche Tomcat-Version verwendet wird:
      • cat /opt/kieselstein/dist/bin/launch-kieselstein-rest-server.sh
      • Suche nach Zeile: export CATALINA_HOME="${KIESELSTEIN_DIST}/apache-tomcat-x.x.x", diese Tomcat Version wird verwendet, die andere(n) müssen gelöscht werden.
    • Prüfen welche Wildfly-Version verwendet wird:
      • cat /opt/kieselstein/dist/bin/launch-kieselstein-main-server.sh
      • Suche nach Zeile: wildfly_bin_dir=${KIESELSTEIN_DIST}/wildfly-x.x.x.Final/bin, diese Wildfly Version wird verwendet die andere(n) müssen gelöscht werden.
      • Achtung Aktuell sind im Wildfly noch die Report-Dateien enthalten sowie eventuelle Anwender-Reports.
        • Es müssen, wenn sich die Wildfly Version ändert, vor dem Löschen des alten Wildfly Ordners alle Anwender-Reports in den neuen Wildfly kopiert werden.
        • /opt/kieselstein/dist/wildfly-.Final/server/helium/report//anwender

Datenbankmigrationen durchführen

Hinweis: Wenn Kieselstein Version kleiner als 0.0.13 ist:

Muss die initiale Migration gemacht werden.
Das gilt auch für den Start mit den Demodaten.

Installation Liquibase

Siehe bitte

Initial-Migrationen setzen

  • In das Liquibase Verzeichnis gehen
    • cd /opt/kieselstein/dist/bootstrap/liquibase
    • Bestehende Datenstrukturen als bereits migriert markieren
      • ./liquibase.sh changelog-sync --label-filter="0.0.12"

ACHTUNG Wenn die Datenbank von der Default-Installation abweicht, müssen in der /opt/kieselstein/dist/bootstrap/liquibase/liquibase.properties Datei die Verbindungseinstellungen angepasst werden:

liquibase.command.url=jdbc:postgresql://localhost:5432/KIESELSTEIN
liquibase.command.username=postgres
liquibase.command.password=postgres

Datenbank Updaten

cd /opt/kieselstein/dist/bootstrap/liquibase
./liquibase.sh update

Dienste wieder aktivieren

systemctl start kieselstein-main-server.service
systemctl start kieselstein-rest-server.service

Aktualisieren der Clients

Siehe hierfür bitte Installation Clients.

Verlagerung der Anwenderreports

Details siehe bitte

3.6.3 - Update Datenbankserver für deinen Kieselstein ERP Server

Update des Postgres Datenbankservers für deinen Kieselstein ERP Server

Wenn du deinen Postgres Datenbankserver aktualisieren willst, so hat sich folgende Vorgehensweise bewährt.

Dass für diese massive Umstellung kein Anwender in deinem Kieselstein ERP angemeldet ist, sollte selbstverständlich sein.

  1. Stoppen des Kieselstein ERP Dienstes

  2. Vollständiges Backup deiner aktiven Kieselstein ERP Datenbanken (KIESELSTEIN und KIESELSTEIN_DOCUMENTS)

  3. Sichern der Backupdateien

  4. Deaktivieren des Postgres-Servers

  5. Neuinstallation des neuen Postgres-Servers.
    Dabei darauf achten, dass die Portnummer gleich bleibt und auch das Master-Passwort wie bisher bleibt

  6. Prüfen der pg_hba.conf und der postgresql.conf.
    Diese sollten in der Regel gleich konfiguriert sein wie bisher

  7. Neuanlegen der beiden Datenbanken durch Verwendung der

    • LW:\kieselstein\dist\bootstrap\liquibase\createdb.bat bzw. createdb.sh
    • danach run-liquibase.bat update bzw.
      liquibase.sh update

    damit werden weitere allgemeine Einstellungen (z.B. DB-Benutzer) eingerichtet

  8. umbenennen der angelegten Datenbanken z.B. auf KIESELSTEIN_default bzw. KIESELSTEIN_DOCUMENTS_default

  9. Neuanlegen der Datenbanken

  10. Restore der Datenbanken aus dem Backup der alten Version

  11. Sicherungsskript(e) auf die neue Version anpassen

  12. Aktualisieren PostgresQL Runtime Pfad (insbesondere für Windows-Systeme)

  13. Starten des Kieselstein ERP Dienstes

  14. Prüfen des Clientzugriffes, durchführen einiger wichtiger Operationen

Eingesetzte Postgresversionen

  • Für die Kieselsteinversionen bis inkl. 1.x.x -> Postgres 14 oder 15
  • Ab der Version 2.x -> Postgres 18

Verwendung von pg_update

Laut Rückmeldung von Anwendern sollte, entgegen der Beschreibung auf den Postgresseiten, obige Vorgehensweise verwendet werden.

3.7 - Anforderungen Kieselstein ERP Server

Anforderungen an den Kieselstein ERP Server

Die Anforderungen an den Kieselstein ERP Server sind von verschiedenen Eckpunkten abhängig. Im wesentlichen sind dies Benutzeranzahl und Betriebssystem.

Server

Windows

Die Verwendung eines 64Bit Betriebssystems ist heutzutage selbstverständlich.
Bei Verwendung von Windows gehen wir davon aus, dass dieses, auch für den Testbetrieb, ordnungsgemäß lizenziert ist.

Eigenschaft Betriebssystem Datenbank Kieselstein
appServer
je Power User je std. User
Kerne 1 1 1 0,5 0,1
Ram [GB] 4 2 2 0,1 0,01
Platte [GB] 100 70 70

Ganz wesentlich in die Geschwindigkeit des Gesamtsystems geht die Zugriffsgeschwindigkeit der / auf die Festplatten ein. Wir raten, auch wenn es teuer ist, zu SSD Platten. Sollte dies nicht möglich sein, zu Raid10.
ACHTUNG: Bei Virtualisierung kommt es immer wieder vor, dass die Platten zwar sehr schnell sind, aber da alle virtuellen Maschinen auf die gleiche Hardware zugreifen, ist im Endeffekt der Festplattencontroller der Flaschenhals. Hier ist zusätzlich zu bedenken, dass die Zugriffe oft mit kleinen Datenmengen erfolgen. D.h. die in der IT üblichen Geschwindigkeitsmessungen haben keine Aussagekraft (die Optimierungsalgorithmen der VM’s greifen leider nicht).

Die Größe der Platten hängt auch an der Verwendung der Dokumentenablage. Kann also, bei intensiver Nutzung, was im Sinne des Systems ist, auch deutlich darüber hinaus anwachsen.

In dieser Betrachtung ist der, für das unumgängliche zumindest tägliche Backup benötigte Platz, nicht berücksichtigt. Auch dies hängt von der Datenmenge der Installation ab. So beginnen Neuinstallationen bei einigen wenigen GB und wachsen danach schon mal auf 150 GB oder mehr an.

Eine wesentliche Frage in diesem Zusammenhang ist das Thema des Backups bzw., wie alt dürfen die Daten bei einem eventuellen Ausfall sein. Das geht bis hin zu gespiegelten Datenbankservern.
Diese Dinge klären wir am besten in einem persönlichen Gespräch.

ACHTUNG: Es muss am Server IMMER der doppelte Speicherplatz wie dein Datenbankbackup belegt frei sein.

Datenbank

Beachte auch die Konfiguration der postgresql.conf

Speed / Geschwindigkeit

Nachdem immer wieder die Meldung kommt, dass der Server stecken bleibt, viel zu langsam ist, hier auch der Versuch festzustellen woher der Flaschenhals kommt:
So kann man als “normal Wert” z.B. das entzippen des Kieselstein.tar.gz verwenden.
In diesem Tar sind große und kleine Dateien enthalten und durch das entzippen wird ein gemischter Datenverkehr erzeugt. Nachfolgend einige Richtwerte.

Dauer [sec] Hardware Eckdaten Anmerkung
4 i9 SSD inkl. Vera Crypt
6 i7 SSD
10 Virtualisierter Server

Welche Windows Betriebssysteme können genutzt werden?

Auch das hängt vom Einsatzbereich ab.
Für eine anfänglich kleine Installation mit 2 Usern reicht auch mal ein Windows11 (Windows 10 wird nicht mehr lange zur Verfügung stehen). Für den Einsatz in einem Unternehmen mit 5 Usern oder mehr, raten wir zum Einsatz eines Server Betriebssystems. Da der ganze grafische Overhead auf dem Server nicht benötigt wird, gerne auch Linux, Debian.
In jedem Falle aber bitte ausschließlich 64 Bit-Systeme.

Benötigte Werkzeuge für den Server

Postgre-SQL Datenbank

Es werden die Version 14 oder 15 der PostgreSQL Datenbank unterstützt. Siehe Downloads unter: https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

Liquibase Migrationstool

Für die Datenbankmigrationen wird das Liquibase Tool benötigt. Die aktuelle Liquibase Version kann vom git Repository heruntergeladen: https://github.com/liquibase/liquibase/releases werden. Hier bis zu den Assets runterscrollen und dann den passenden (Bsp.: Windows-)Installer auswählen. Z.B.: liquibase-windows-x64-installer-x.x.x.exe

Java-Version

ACHTUNG Java Version 11 ist erst ab der Kieselstein-Version 1.0.0 und höher unterstützt; vorher bitte Java-Version 8 verwenden!

Es wird für den Server die Azul-Java Version 11 benötigt. Siehe dazu www.azul.com, klick auf Downloads
runterscrollen und Java11 LTS, (das jeweilige Betriebssystem auswählen), x86 64.bit, JDK FX auswählen.

Nginx Webserver

Wenn die REST-Schnittstelle oder andere Dienste über das Internet zur Verfügung stehen sollen, dann sollte dies über einen Nginx-Webserver werden. Es wird für die Installation eine Default-Konfiguration (unter Kieselstein/dist/bootstrap/) mit ausgeliefert, wo der Port 8280 ohne SSL vorkonfiguriert ist (wie es bei früheren Versionen mit dem Tomcat durchgeführt wurde).

Unter nginxtutorials.com ist auch beschrieben wie mit Nginx ein Lets Encrypt-SSL-Zertifikat erstellt werden kann.

Alternativ kann natürlich auch ein “Selbstsigniertes Zertifikat” für SSL mit Nginx verwendet werden.

weitere Last am Server

Es gibt inzwischen noch eine Anzahl von Funktionen / Zugriffen auf den Server, die für jeden Zugriff mehr oder weniger Serverlast ziehen. Auch diese sind in den obigen Überlegungen zu berücksichtigen.

  • RestAPI, je nach Intensität der Nutzung
  • ZE-Terminals je nach Buchungshäufigkeit. Es ist ein entsprechender Unterschied, ob nur Kommt/Geht (Anwesenheitszeit) gebucht wird, oder die papierlose Fertigung mit Zeichnungen, Auswahllisten usw. verwendet wird. Insbesondere die Zeitverteilungsberechnungen können entsprechende Serverlast erzeugen.
  • Anwesenheitsliste(n): Auch hier macht es einen großen Unterschied, ob 10 Terminals im 30 Sekunden Takt jeweils eine neue Liste anfordern, oder ob diese über den Anwesenheitslisten Proxy eigenständig aufbereitet werden.
  • die Listenauswertungen per Web-Pages. Auch diese Auswertungen brauchen entsprechende CPU Leistung.

Client

Hier reichen heutzutage (2023) übliche Standard PC’s, mit mindestens 64 Bit Betriebssystemen und 8 GB Ram (wenn nur der Kieselstein-ERP Client läuft). Empfohlen 16 GB Ram, gerne mehr.
Auch hier raten wir zur Verwendung von SSD Platten, da auch diese massiv in das Geschwindigkeitsverhalten eingehen.

3.8 - IT-Betreuung

Was sind die Aufgaben deines IT-Betreuers

Nachfolgend eine lose Aufstellung der Aufgaben deines IT-Betreuers für den Betrieb deines Kieselstein ERP-Systems, welche nicht vollständig ist.

Es sollte dies dazu dienen, den Umfang einer verantwortungsvollen IT-Betreuung zu skizzieren. Ergänzungen dazu sind willkommen.

Bitte beachte auch, dass dein Kieselstein ERP zwar die IT massiv nutzt. Die Betreuung deiner IT ist aber in keinster Weise die Aufgabe der Genossenschaft bzw. der Techniker:innen der Consultants, auch wenn das andere Firmen anders handhaben mögen. Siehe dazu auch Update

Welche Aufgaben sollte die IT-Betreuung nun übernehmen:

  • Zur Verfügungstellung eines geeigneten ERP-Servers
  • Prüfung der Performance des Servers, zur Verfügungstellung einer ausreichenden Performance
  • Einrichten der Updates sowohl Clients als auch Server
  • Netzwerk-Zugriffssicherheit
  • Datensicherung inkl. Überprüfung
  • WLan Access
  • Planung von Erweiterungen (lieber ein geplanter Stillstand als ungeplantes Chaos)
  • ist bei Problemen innerhalb von xx Std verfügbar, zumindest an Arbeitstagen und an normalen Wochenenden und ….
  • weiß auch, wie man ein Kieselstein ERP installiert und die Datenbanken wieder herstellt.

Anmerkung:
Wenn du diese Betreuung selbst übernimmst, gehen wir davon aus, dass eine entsprechende Qualifikation gegeben ist. Du also auch die Verantwortung dafür übernimmst / übernehmen kannst. Von der Verfügbarkeit des Backups (zu jeder Zeit) bis zu Updates usw..

Für die Einrichtung der Zugangsdaten des (externen) Betreuers siehe

3.9 - File orientierte Dokumente Datenbank

Wo werden meine Dokumente gespeichert

Dein Kieselstein ERP hat grundsätzlich zwei Datenbanken.

  • Die reinen ERP-Daten, klein, schlank, schnell. Hier sind die ganzen “Zahlen” gespeichert.

  • Die Dokumente-Datenbank. Hier sind die Dokumente abgelegt.
    Diese gibt es wiederum in zwei Ausführungen.

    • Default als Datenbank-Tabelle. D.h. die “Bilder” der Dokumente (Ausgangsrechnungen, Eingangsrechnungen, Spezifikationen) werden als sogenannter BLOB direkt in der Dokumentendatenbank gespeichert. Das bewirkt wiederum, dass im Laufe der Jahre diese Datenbank immer größer wird, einige zig GByte sind normal, und so das tägliche Backup dieser Daten immer länger dauert. Je nach Installation kann es auch dazu kommen, dass die Nacht (12Std) zu kurz wird und somit kein konsistentes Backup mehr gegeben ist.
    • Daher gibt es als Alternative die sogenannte fileorientierte Dokumentendatenbank.
      Idealerweise wird diese bereits bei der Installation deines Kieselstein ERP eingerichtet.
      Für die Verwendung der Fileorientierten Datenbank muss du nur die Environmentvariablen DOC_CONFIG auf ${KIESELSTEIN_DIST}/conf/jackrabbit-datastore-fs.xml bzw. %KIESELSTEIN_DIST%\conf\jackrabbit-datastore-fs.xml einrichten.
    Linux, /etc/environment, ${KIESELSTEIN_DIST}/conf/jackrabbit-datastore-fs.xml
    Windows: %KIESELSTEIN_DIST%\conf\jackrabbit-datastore-fs.xml
    

    Damit greifst du auf die standard Konfigurationsdateien für deinen Kieselstein ERP Server zu.
    Sollte trotzdem der Jackrabbit nicht starten (in ../standalone/deployments/ steht kieselstein-1.1.7.ear.failed) so must du wahrscheinlich auch noch die LW:\kieselstein\data\jackrabbit\workspaces\default\workspace.xml anpassen. Siehe dazu

    Der Vorteil ist, dass die eigentliche Dokumente nur immer neue Daten sind und somit, z.B. mit rsync, nur eine Veränderungs (Erweiterungs) Sicherung gemacht werden muss und damit die dafür benötigte Zeit wesentlich kürzer ist. Es muss allerdings diese zusätzliche Sicherung auch eingerichtet werden.

Ein Wort zur Veränderbarkeit in den Dokumenten-Daten

Da diese Frage immer wieder kommt, also kann ein Super Spezialist die Daten der Dokumente verändern? Hierzu muss man folgendes wissen:

  • die Dokumente werden als BLOB Binary Large OBject abgelegt. Dies ist nichts anderes als eine Verkettung von Dateiblöcken in denen die eigentlichen Daten hintereinander eingereiht sind. D.h. das herausfinden einer einzelnen Datei, ist schon ziemlich aufwändig und man muss schon sehr genau wissen was man sucht.
  • Nun werden z.B. die Ausgangsrechnungen als Jasper-Objecte (in Dateiform) abgelegt.
  • werden nun Daten eingefügt (aus 100 wird 1.000) oder Daten verändert, aus einer 0 wird eine 1, so stimmt die Filegröße nicht mehr und oder die Checksumme stimmt nicht mehr. Damit ist die gesamte Dokumentendatenbank unbrauchbar.

Ob man dies nun, mit einer entsprechend kriminellen Energie auch richtig stellen könnte, ist mir nicht bekannt. Hier kommt mit dazu, dass die Person die dieses macht, physikalisch auf deinen Kieselstein ERP Server Zugriff haben muss (root). Wenn das alles gelingt, hast du ein anderes Problem.

Daher betrachten wir diese Daten als unveränderbar.

Umstellung der Dokumentendatenbank

Siehe

3.10 - Einstellungen für Postgres

Einstellungen an der Postgres

Nachfolgend empfohlene Einstellungen an der Postgres Konfiguration.

Grundsätzlich reicht bei kleinen Installationen die Standard-Konfiguration von PostgresQL. Beachte bitte die bei den Betriebssystemen beschriebenen Unterschiede.

Im Laufe der Zeit haben sich folgende zusätzliche Anpassungen herauskristallisiert:

postgresql.conf

Betriebssystem Pfad
Windwos LW:\Program Files\PostgreSQL\14\data\postgresql.conf
Debian /etc/postgresql/15/main
Ubuntu /etc/postgresql/18/main
Parameter empfohlener Wert Beschreibung
max_connections 150
shared_buffers 1024MB
listen_addresses je nach Zugriffsart, auf Sicherheit achten
datestyle iso, dmy
timezone Europe/Vienna gerne auch Berlin oder Zuerich

Bitte beachte, dass nach Änderungen an diesen Werten, ein Neustart des postgresql notwendig ist.

3.11 - Installation Liquibase

Installation Liquibase für dein Kieselstein ERP

Für die Datenbankversionsverwaltung deines Kieselstein ERP Systemes, wird die Community Edition von Liquibase verwendet.

Es wird dafür die Version 4.30 bis 4.33 benötigt.
Die Version 5.x benötigt Java 17 und kann daher derzeit nicht verwendet werden.

Den Download von github.com starten
bzw. Allgemein oder auch von Sourceforge

Installation Liquibase unter Windows

Für die Datenbankmigrationen muss das Tool liquibase installiert werden.
Aktuelle Liquibase Version vom git Repository runterladen:
https://github.com/liquibase/liquibase/releases
Hier bis zu den Assets runterscrollen und dann den passenden (Windows-)Installer auswählen. Z.B.: liquibase-windows-x64-installer-4.x.x.exe

Den Installer (siehe oben) am Server ausführen und durchklicken.
Bitte darauf achten, dass Add Liquibase to PATH angehakt bleibt.

Achtung nach der Installation von Liquibase müssen für die weiteren Arbeiten neue Eingabeaufforderungen (cmd) gestartet werden! Ein Neustart des Servers ist nicht erforderlich.

Installation Liquibase unter Linux

Für die Datenbankmigrationen, muss das Tool liquibase installiert werden.
ACHTUNG: Du musst dafür root-Rechte haben z.B. su - root (und dann dein eigenes PW eingeben)

wget -O- https://repo.liquibase.com/liquibase.asc | gpg --dearmor > liquibase-keyring.gpg && \
cat liquibase-keyring.gpg | tee /usr/share/keyrings/liquibase-keyring.gpg > /dev/null && \
echo 'deb [arch=amd64 signed-by=/usr/share/keyrings/liquibase-keyring.gpg] https://repo.liquibase.com stable main' | tee /etc/apt/sources.list.d/liquibase.list
apt-get update

Nun die Liquibase Version 4.33.0 installieren

apt-get install liquibase=4.33.0

Da dies nicht mehr geht, von Github herunterladen

nun das Verzeichnis anlegen:

sudo mkdir /opt/liquibase

Danach
in dein Download Verzeichnis wechseln und

sudo tar -xzf liquibase-4.33.0.tar.gz -C /opt/liquibase

Auch hier kannst du prüfen, ob die Installation gegangen ist.

liquibase --version

Und die Pfad Definition erweitern:

nano ~/.bashrc
export PATH="$PATH:/opt/liquibase"

Hinweis:
Sollte die Installation des Liquibase nicht möglich sein, muss das gpg aktualisiert werden. Vermutlich ist das ein Signal für eine veraltete Installation, daher das gesamte Betriebssystem aktualisieren.

passende Version

Gerne stellen wir dir eine passende Liquibase Version zur Verfügung.
Wende dich diesbezüglich vertrauensvoll an die Kieselstein ERP eG

Liquibase kann nicht updaten

Beim Update sehr alter Versionen kann es anscheinend vorkommen, dass in der Liquibase Protokolldatei der Eintrag, dass das Initiale-Datenbankupdate schon durchgeführt wurde fehlt.
Das bewirkt, dass ein ewig langes Errorlog ausgegeben wird (welches leider nicht in ein File umgeleitet werden kann). Es sind in diesem Dump die Commandos aus dem Initialen changelog 0.0.0 enthalten.

Im Endeffekt bedeutet es, dass der Eintrag in die Protokolltabelle eingetragen werden muss. D.h. z.B. mit dem PGAdmin folgendes Statement ausführen.

INSERT INTO public.databasechangelog(
	id, author, filename, dateexecuted, orderexecuted, exectype, md5sum, description, comments, tag, liquibase, contexts, labels, deployment_id)
	VALUES ('update-db','KES','changelogs/0.0.0/init.xml','2024-11-12 16:55:47.706595',1,'EXECUTED','9:d59fe261b60da8688003077dc5bbf89c','sqlFile path=0_basic_structure.sql; sqlFile path=1_basic_data.sql; sqlFile path=2_basic_constraints.sql','',NULL,'4.30.0',NULL,'0.0.12','1426947719');

Danach erneut

  • clear-checksum
  • update

ausführen.

4 - Installation Client

Installationsbeschreibung für die Ausrollung des Kieselstein ERP Clients

Voraussetzung: Du hast auf den jeweiligen Rechnern ausreichende Installationsrechte und bist mit den Arbeiten mit Programm-Files und allem, was so dazu gehört, vertraut. Für Unterstützung wende dich als Mitglied der Kieselstein-ERP eG gerne an eine:n der Consulter:innen.

Ab der Version 0.0.0.8 deines Kieselstein ERP können die erforderlichen Installationsdateien über einen Weblink geladen werden. Gehe dazu in einem Browser auf http://IPADRESSE_KIESELSTEIN_ERP:8080.

Klicke nun auf download clients

Hier findest du nun die vom Installationsverantwortlichen zusammengestellten Dateien zum Download zur Auswahl.

Es sind dies alle Dateien die in deinem Kieselstein-ERP im Verzeichnis
LW:\kieselstein\dist\clients abgelegt sind.
Es ist Aufgabe des/der Installierenden hier alle richtigen Dateien zusammenzustellen. Das bedeutet aktuell auch, dass nach jedem Update die Dateien anzupassen sind.

In der Client.zip sind die beiden Verzeichnisse für die Installation enthalten. Lade diese herunter und kopiere diese z.B. auf c:\kieselstein\client.

Im bin Verzeichnis findest du drei Dateien:

In Windowssystemen richte dir eine Desktop-Verknüpfung auf die kieselstein-client.bat ein. Dieser gibst du das Icon Kieselstein.ico.
In Linux bzw. macOS verwendest du die kieselstein-client.sh.

Nun benötigst du noch das passende Java (wenn nicht schon installiert), welches ebenfalls im Browser als Download zur Verfügung steht (zulu ….).

Üblicherweise kann ein / alle eventuell vorhandenes(n) Java entfernt werden. -> EMPFOHLEN

Installiere nun das Azul Java mit den default Einstellungen. Einzig bei der Frage nach dem Java Home wähle immer Verfügbar. Details siehe

Nun kannst du deinen Kieselstein ERP Client starten.
Benutzername und Passwort erhältst du von deinem/r Kieselstein ERP in Haus Verantwortlichen.

Hinweis:
Sollte nach eine Neuinstallation von Java, das Java trotzdem nicht zur Verfügung stehen (prüfen z.B. aufmachen des CMD (Command-Shell) und Java -version), so hilft unter Umständen, gerade bei komplexen Berechtigungen, ein Neustart des Rechners.

Hinweis:
Es hat sich bewährt, auf den Rechnern der Poweruser auch einen Teamviewer (https://www.teamviewer.com/de/download/windows/) installiert zu haben. Wir gehen davon aus, dass jeder ERP Anwender den Teamviewer starten kann und darf.

Von Kieselstein ERP verwendete Ports siehe bitte Server

Java

Wir setzen zurzeit folgende Version voraus:

Gerade im Clientbereich kann es vorkommen, dass andere Versionen eingesetzt werden. Bitte beachte, dass für das richtige Verhalten der Software ausschließlich die unten von Azul zur Verfügung gestellte OpenJDK11 verwendet werden sollte. Bitte beachte bei der Verwendung von original Oracle Java 11 Versionen, dass diese lizenzkostenpflichtig sind.

Der Basis-Link für das erprobte Zulu Java findest du unter https://www.azul.com/downloads/?package=jdk#zulu Hier dann Java 11 mit jdk-FX auch passend zu deinem Betriebssystem auswählen.

Den Download einer freien OpenJDK Version mit Java 11 für deinen Client finden man unter: https://www.azul.com/downloads/?version=java-11-lts&os=windows&package=jdk-fx

Achte bei der Installation des Javas darauf, dass:

  • keine weiteren Java Versionen installiert sind. ACHTUNG: solltest du für andere Programme bestimmte Java Versionen benötigen, lässt sich auch das einrichten. Bitte wende dich an deinen Kieselstein ERP Betreuer
  • bei der Installation muss das Java Home gesetzt werden, also:

Hinweis: bei einem Mac mit Apple Silicon Prozess wird die Java-Zulu FX Version vorausgesetzt.

Client startet nicht

Wenn unter Windows der Client nur kurz durchläuft und sich dann wieder automatisch beendet, so ist der Pfad in dem deine eigentlichen Clientdateien stecken zu lange. Mache diese kürzer.
Wir raten dies unter LW:\Kieselstein\Client einzurichten

Fehler beim Drucken von Barcodes

Es werden viele Fehler in der Client-Console angezeigt.
Die Barcode sind zerstückelt.
Beim Drucken von Artikeletiketten erscheint das Vorschau-Fenster nicht. Fährt man mit der Maus über den Client erscheinen teilweise die “Bilder” des Druck-Vorschau-Fensters.

Bitte prüfe, ob das aktuelle Java installiert ist.
Es muss
angezeigt werden. Wird ein älteres Java angezeigt, kann es zu den beschriebenen Effekten kommen. Wichtig eben auch, nur Java mit der FX Erweiterung.
Sollte die Anzeige trotzdem so “spinnen”, dann ist dies ein Problem der Grafikkarte bzw. des Treibers.
Das kann auch auftreten, wenn der Rechner ohne Bildschirm installiert ist und man nur per Fernwartung (Teamviewer, Remote Desktop, …) zugreift.

Fehlermeldung beim ersten Ausführen

Startet man unter Windows den Batch zum ersten Mal, kommt
So auf Weitere Informationen klicken und dann
Auf den Trotzdem ausführen Button klicken. Dies bleibt bis zum nächsten Update / Erneuerung des Batchs erhalten.

Client in Start / Taskleiste bringen

Hat man, wie oben beschrieben den Client.bat (eigentlich die LW:\kieselstein\dist\client\bin\kieselstein-ui-swing.bat ) als Verknüpfung auf den Desktop gelegt, so wünscht man sich oft, diese auch in den Start bzw. die Taskleiste zu bringen.

Der Trick dafür geht wie folgt:

  1. In den Eigenschaften der Verknüpfung vorne das Ziel um C:\Windows\System32\cmd.exe /c ergänzen.
  2. Nun Rechtsklick auf die Verknüpfung.
    • Im Windows 10 sieht man nun

      An Start anheften bzw. an Taskleiste anheften, womit man das Start-Icon in den gewünschten Bereich bringen kann. Es sollte die Verknüpfung auf das Desktop-Icon vor dem Verschieben gemacht werden.
    • Im Windows 11 wählt man vorher noch Weitere Optionen anzeigen und kann damit dann An Start anheften bzw. an Taskleiste anheften auswählen.

Wird auch Windows 7 unterstützt?

Da Windows 7 schon seit etlichen Jahren nicht mehr supported wird und alleine schon aus diesem Titel dies eine grobe Verletzung der DSGVO darstellt, wird Windows 7 nicht unterstützt. Bitte verwende aktuelle Betriebssysteme, gegebenenfalls auch in einer VM (Virtual Machine) z.B. mit Virtual Box.

Geschwindigkeit, langsamer Client

Neben der reinen Netzwerk-Zugriffs-Geschwindigkeit (siehe Hauptmenüleiste, Hilfe, Info) ist unter Umständen auch der Back-Call des Servers an den Client für die Geschwindigkeit, meist auch für die Langsamkeit verantwortlich.

D.h. es müssen sowohl der Server vom Client aus als auch der Client vom Server aus, mit ihren Netzwerk-Namen als auch mit den IP Adressen problemlos und schnell erreicht werden können. Ist dem nicht so, dauert das Blättern zwischen den Modulreitern entsprechend lange.

Gerade in Linux-Systemen oder bei VPN Verbindungen werden hier gerne Konfigurationsfehler gemacht.

In anderen Worten, es muss der DNS Name immer auf einen internen DNS Server zeigen, dann ist zumindest von dieser Seite her die Geschwindigkeit entsprechend optimiert.

Für Windows-User siehe Eigenschaften der Netzwerkverbindung

Client-Updates

Nachfolgend eine kleine Beschreibung der Besonderheiten beim Update der Clients, von aus älteren Versionen.

Alter Server

Manchmal will man die Installation vorab testen.
Hier ist wichtig zu wissen, dass die neueren Clients, z.B. 0.1.1, bereits beim Starten, bevor noch irgendeine Oberfläche angezeigt wird, den Server um die Versionsnummer (der Datenbank und des Servers) abfragen.
Das bedeutet, wenn du mit einem neuen Client gegen einen alten Server testest, wird dies nicht funktionieren. Der optische Eindruck ist, dass der Client nicht startet. Startest du den Client aus der Commandshell, ohne javaw.exe so siehst du

Got Exception No such EJB method org.jboss.ejb.client.EJBMethodLocator@bc7b26d3 found on lpserver/ejb/SystemFacBean java.lang.IllegalArgumentException: No such EJB method org.jboss.ejb.client.EJBMethodLocator@bc7b26d3 found on lpserver/ejb/SystemFacBean

Das bedeutet, der Client konnte zwar eine Verbindung zum Server herstellen, aber die Abfrage nach der Versionsnummer ist bereits fehlgeschlagen.
Hier hilft nur den Server auch zu aktualisieren.

Sprachsteuerung bei Anmeldung

Üblicherweise wird beim Start des Clients auch die Sprache vorgeschlagen, die für den Anwender die richtige ist. Diese Definition findest du unter
LW:\Kieselstein\client\bin\kieselstein-client.bat
Hier steht (ca. in Zeile 37)
´´´ set DEFAULT_JVM_OPTS="-XX:PermSize=64m" “-XX:MaxPermSize=256m” “-Djava.naming.factory.initial=org.wildfly.naming.client.WildFlyInitialContextFactory” “-Djava.naming.provider.url=remote+http://192.168.100.14:8080” “-Dloc=sl_ " “-Dsun.java2d.dpiaware=false” ´´´ mit dem Parameter -Dloc= kann gesteuert werden, welche Sprache vorgeschlagen wird. Bitte beachte: sollte die hier eingetragene Sprache in deinem Kieselstein ERP nicht aktiviert sein, so wird die nächstliegende Sprache verwendet.

Für die aktuell unterstützten Sprachen müssen folgende Einträge gemacht werden. Welche Einträge in aktiviert sind, findest du in der lp_locale.

locale Sprache
deAT Deutsch mit österreichischer Sprachausprägung
deCH Deutsch mit schweizer Sprachausprägung
deDE Deutsch mit deutscher Sprachausprägung
enGB Britisches Englisch (nicht vollständig übersetzt)
enUS Amerikanisches Englisch
itIT Italienisch
plPL Polnisch
sl Slowenisch. Bitte beachte, dass die Definition des Locales mit sl_< >< > mit zwei nachfolgenden Spaces erfolgen muss.
Ist eigentlich Englisch, aber um die Zahlen wie in Europa üblich darzustellen als Slowenisch definiert

In der für Linux verwendeten kieselstein-client. steht dies in Zeile 203.

Weitere Details siehe

Serveradresse und Locale zentrale steuern

Ab der Version 1.1.15 stehen dafür Environment Variablen zur Verfügung.
Um diese zentrale auszurollen, verwende ab der Version 1.1.15 die Batch-Datei kieselstein_server_setzen.bat aus dem client bin Verzeichnis.

Trage hier die aktuelle IP-Adresse deines Kieselstein ERP Servers ein und die gewünschte Anmeldesprache.

Üblicherweise wird diese auf ein allgemeines für Alle zugängliches Netzlaufwerk / Netzwerkshare zur Verfügung gestellt und einmal für jeden Rechner als Administrator ausgeführt.

4.1 - Installation Kieselstein ERP Client unter Debian

Installation eines Kieselstein ERP Clients unter Debian

Den Kieselstein ERP Client auf einem frischen Debian installieren

4.2 - Installation Kieselstein ERP Client unter Ubuntu

Installation Client zu Kieselstein ERP Server unter Ubuntu

Siehe bitte allgemeine Client Beschreibung

Praktisch

Den Midnight Commander verwenden:

sudo apt install mc

Java installieren

Um das passende Java11 FX zu bekommen sind folgende Schritte erforderlich:

apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 0xB1998361219BD9C9
apt-add-repository 'deb http://repos.azulsystems.com/ubuntu stable main'
apt update
apt install zulu-11

Danach das Java Home manuell hinzufügen:

nano /etc/environment
JAVA_HOME="/usr/lib/jvm/zulu-fx-11-amd64"

source /etc/environment
echo $JAVA_HOME

Anzeige:
/usr/lib/jvm/zulu-fx-11-amd64

Alternativ herunterladen des Java FX Packages

mit dpkg installieren, einmal apt install -f, dann nochmal installieren!

Erfahrungen auf einem neuen Ubuntu 24.04 LTS

Java installieren

  • Von Azul.com , JDK11 FX, Ubuntu, DEB Paket herunterladen.
    Es wird dies unter /home/username/Downloads abgelegt -> Für die eventuelle De-Installation muss das Paket an dieser oder an einer anderen auffindbaren Stelle, belassen werden.
  • In Downloads wechseln und mit Doppelklick starten
  • Sollte das nicht gehen.
    • ein Terminal starten
    • sudo -i -> damit wirst du root
    • dpkg -i Dateiname des Javapaketes z.B.
    • sudo apt-get install openjdk-11-jdk
    • gegebenenfalls muss vorher
      apt --fix-broken install
      
      ausgeführt werden
  • mit java -version prüfen ob die Installation funktioniert hat
  • mit nano /etc/environment
    JAVA_HOME setzen z.B.: /lib/jvm/zulu-fx-11-amd64
  • mit echo $JAVA_HOME
    Prüfen ob das funktioniert hat.

Gegebenenfalls den Rechner mal neu starten

KES CLient herunterladen

Für eine allgemeine Anwendung kannst du den Kieselstein ERP Client unter /opt/kieselstein installieren (und hier auch zentral alle weiteren Dinge sammeln).

Bei einem lauffähigen Kieselstein ERP System findest du unter http://KIESELSTEIN_ERP_SERVER_ADRESSE:8080 alle nötigen Dateien (Für KIESELSTEIN_ERP_SERVER_ADRESSE in der Regel die IP-Adresse deines KLieselstein ERP Servers angeben )

  • Hier liegt unter Client-Install idealerweise ein angepasstes Client.zip
  • Dieses herunterladen und den Inhalt des zip z.B. nach /opt/kieselstein kopieren. Dabei auch den Ordner client mit kopieren
  • Nun ein Terminal öffnen, sudo -i (damit bist du root)
  • und nach /opt/kieselstein wechseln
  • und mit chmod -R 777 client für das client-Verzeichnis und seine Programme volle Berechtigungen setzen
  • nun mit cd client/bin/ ins Verzeichnis wechseln und ./kieselstein-client.sh starten

Einrichten der Desktop Verknüpfung

Das geht am besten mit “desktop” Files. Ein Muster findest du auch auf deinem Server unter /opt/kieselstein/dist/clients/ entweder im tar/gz oder direkt dann im bin Verzeichnis.

[Desktop Entry]
Name=Kieselstein Client
Comment=Kieselstein ERP Client
Exec=/opt/kieselstein/client/bin/kieselstein-client
Icon=/opt/kieselstein/client/bin/kieselstein-icon-square-96x96px.png
Terminal=false
Type=Application
Categories=Office

Als Icon kannst du aus dem Gitlab gerne die Kieselstein ERP Icons verwenden, bzw. das im Client.zip mit enthaltene Icon.

Für eine allgemeine Anwendung kannst du den Kieselstein ERP CLient unter /opt/kieselstein installieren (und hier auch zentral alle weiteren Dinge sammeln).

Also:

  • ein Terminal öffnen
  • mit sudo -i root werden
  • cd /opt
  • mkdir kieselstein
  • hier die Dateien aus dem Download inkl. Client einkopieren
  • nun die desktop Datei auf deinen Schreibtisch kopieren. Z.B.
cp /opt/kieselstein/client/bin/kieselstein.desktop /home/Benutzername/Schreibtisch/kieselstein.desktop
  • nun erscheint das Icon auf dem Desktop. Dieses mit der rechten Maustaste anklicken und Starten erlauben.

4.3 - Installation Client zu Kieselstein ERP unter Windows(r)

Installation Client zu Kieselstein ERP Server unter Windows(r)

Siehe bitte allgemeine Client Beschreibung

Abschalten der Einrichtemeldung

Windows 10

Siehe: https://support.microsoft.com/de-de/windows/benachrichtigungen-zur-ger%C3%A4teeinrichtung-deaktivieren-c88f6943-d169-23ca-5f3f-c6b927509e79

Übernommen aus obigem Artikel.

Nach jedem Neustart schlägt Windows vor, das Einrichten des Geräts zu beenden. Um dies unter Windows 10 abzuschalten, gehe bitte folgendermaßen vor:

  1. Start, Einstellungen, System, Benachrichtigungen und Aktionen
  2. Deaktiviere unter Benachrichtigungen das Kontrollkästchen neben Möglichkeiten vorschlagen, wie ich mein Gerät so einrichten kann, dass Windows optimal genutzt wird.

Windows 11

  1. Start, Einstellungen, System, Benachrichtigungen
  2. ganz nach unten scrollen und zusätzliche Einstellungen aufklappen
  3. ich persönlich entferne alle drei Häkchen

4.4 - Installation Client zu Kieselstein ERP unter macOS

Installation Client zu Kieselstein ERP Server unter macOS

Installation des Clients unter macOS

Du kannst den Client deines Kieselstein ERP auch unter macOS betreiben. Wichtig ist von Anfang an zu unterscheiden, mit welchem Prozessor dein MAC ausgestattet ist. Entweder X64 oder Arm. Diese Information findest du unter Apfel, über diesen MAC

und dann

Der Apple M1 ist das erste Arm-basierte System-on-a-Chip (SoC) von Apple für seine Mac-Computer. Wikipedia

Das benötigte Java findest du unter https://www.azul.com/downloads/?version=java-21-lts&os=macos&package=jdk-fx#zulu

Hier:
Nun das entsprechende Paket auswählen,

in der Regel .dmg.

In die Downloads gehen und

mit einem Doppelklick das JDK 21 von Azul installieren.

Du kannst nun prüfen, ob die soeben installierte Javaversion auch richtig installiert wurde. Dazu ein Terminal öffnen und java -version eingeben.

Herunterladen des Clients

Die Kieselstein ERP Installation stellt den Download deines Clients unter http://IPADRESSE_KIESELSTEIN_ERP:8080/clients bereit.

Öffne dazu das Terminal (Programme, Dienstprogramme, Terminal)

und lade das Archiv auf den Schreibtisch:

cd ~/Desktop
curl -O http://IPADRESSE_KIESELSTEIN_ERP:8080/clients/Client.zip

Ersetze IPADRESSE_KIESELSTEIN_ERP durch die Adresse deines Servers und Client.zip durch den Dateinamen, den dein Installationsverantwortlicher bereitgestellt hat. Welche Dateien das sind, siehst du mit:

curl http://IPADRESSE_KIESELSTEIN_ERP:8080/clients/

Anschließend entpacken und die Ausführenberechtigung für das Start-Script setzen:

unzip Client.zip
chmod +x ~/Desktop/Kieselstein/bin/kieselstein-client.sh



Empfehlung

Um beim Start deines Kieselstein ERP Clients direkt (das Terminal) zu starten, benenne die Datei kieselstein-client.sh auf kieselstein-client.command um, bzw. bitte deinen Kieselstein ERP Betreuer diese Datei im client.zip zur Verfügung zu stellen.
Damit erreichst du, dass mit einem Doppelklick direkt dein Kieselstein ERP Client gestartet wird.

Meldung “Apple kann die Datei nicht auf Schadsoftware überprüfen”

Wurde das Archiv doch über den Browser geladen, so trägt das Start-Script die Quarantäne-Markierung und der Start wird mit der Meldung abgewiesen, dass Apple die Datei nicht auf Schadsoftware überprüfen kann.
Prüfen kannst du das im Terminal mit:

xattr -l ~/Desktop/Kieselstein/bin/kieselstein-client.sh

Steht dort com.apple.quarantine, so entferne die Markierung:

xattr -d com.apple.quarantine ~/Desktop/Kieselstein/bin/kieselstein-client.sh

Betrifft es mehrere Dateien, hebe die Markierung für das gesamte Verzeichnis auf:

xattr -dr com.apple.quarantine ~/Desktop/Kieselstein

ACHTUNG:
Wenn du im lokalen Netzwerk keinen Zugriff auf die interne Adresse deines Servers hast, so musst du in den Systemeinstellungen, Datenschutz & Sicherheit, lokales Netzwerk, dem Terminal bzw. deinem Browser die Zugriffsberechtigungen erlauben.

Hinweis: Beim ersten Zugriff auf die interne Netzwerkadresse wirst du nach der Freigabe gefragt. Diese mit Erlauben beantworten (erspart dir obige Einstellungen).

Nun im Finder in das Verzeichnis (Schreibtisch, Kieselstein, bin) wechseln und

auf kieselstein-client.sh mit der rechten Maustaste, Öffnen mit, Andere

Hier bei “Aktivieren” “Alle Programme” auswählen und das “Immer öffnen mit” anhaken.
Nun das Terminal auswählen.

Die nun folgende Sicherheitsmeldung mit “Öffnen” bestätigen.

Berechtigungsanpassungen für den Datenzugriff auf MacOS wurden im FAQ-Bereich der Doku genauer beschrieben.

Version 2.0.0

Ab der Version 2.0.0 wird Java 21 benötigt. Das Start-Script heißt kieselstein-client.sh.

Einrichten der Zugriffe

Setzen der Umgebungsvariablen für die Verbindung mit deinem Kieselstein Server.
Eintragen in der Datei .zshrc in deinem Benutzerverzeichnis

export KIESELSTEIN_SERVER=192.168.xx.yy
export KIESELSTEIN_LOCALE=de_DE

Für KIESELSTEIN_LOCALE stehen z.B. de_DE, de_CH, de_AT oder en_US zur Verfügung. Ohne diese Einträge verbindet sich der Client mit localhost und startet in der Sprache de_AT.

Verwendung unter ARM derzeit leider nicht empfohlen.

Beim Start der Version 2.0.0 (final) kommt leider die falsche Fehlermeldung Arimo Fonts nicht gefunden.
Trotz dieser Fehlermeldung können die Reports ordnungsgemäß gedruckt werden. Wir werden dies in einer der nächsten Versionen beheben.

MAC KnowHow

Verbinden am Mac zu einen anderen Server
  • Command(Taste) und K
  • nun die Verbindung angeben. Auf eine normale NAS z.B. mit SMB://192.168.xx.yy
  • Nun Benutzername und Passwort auf der externen Verbindung angeben.

Du findest dann dieses “Verzeichnis” im Finder unter Volumes, dann der Name der “Freigabe”

Besondere Druckereigenschaften einrichten

Siehe dazu

4.5 - Tipps zur Client Installation

Tipps und Infos zur Client-Installation

Nachfolgende eine Lose Sammlung an Infos rund um die Client-Installation.

Windows

Client Log

Wenn mal der Client einfach nicht starten will, so wünscht man sich meist ein Info was denn der Grund dafür sein könnte.
Diese Info wird in der Client-Log-Datei abgelegt.
Unter Windows findest du diese unter c:\user\benutzername.kse\Default\log\lpclient.log
Hier werden die täglichen Log-Dateien abgelegt, welche auch nie gelöscht werden.

5 - Installationsbeschreibung bis 2.0.x

Alte Installationsanleitungen für Versionen vor der 2.1.x

Zur Dokumentation falls jemand noch eine Version vor der 2.1.x im Einsatz hat und diese pflegen will.

Wir können nur dringend raten auf die aktuelle Version zu wechseln.

Beachte, dass Dinge wie Recovery, soll ich updaten und ähnliches auch für eventuelle ältere Versionen gelten.