Zum Inhalt

Changelog

Diese Seite dokumentiert die Versionshistorie von calServer. Änderungen sind chronologisch absteigend sortiert – die neueste Version steht oben. Jeder Eintrag enthält eine kurze Erklärung der Änderung auf Deutsch.

Versionsschema

calServer verwendet semantische Versionierung:

<Major>.<Minor>.<Patch>
Bestandteil Bedeutung
Major Inkompatible Änderungen, größere Architekturumstellungen
Minor Neue Funktionen, abwärtskompatibel
Patch Fehlerbehebungen und kleinere Verbesserungen

Die aktuelle Version wird in VERSION im Projektstammverzeichnis sowie in httpdocs/protected/config/constants.php gepflegt.

Änderungskategorien

Kategorie Bedeutung
Funktion Neue oder erweiterte Funktionalität (feat)
Fix Behobener Fehler (fix)
Dokumentation Änderungen ausschließlich an der Dokumentation (docs)

Plattform-Flags

Flag Bedeutung
BASE Änderungen am Legacy-System V1 (Yii 1.1 / httpdocs/)
APEX Änderungen am modernen System V2 (Laravel + Nuxt 3 / laravel/ + frontend-v2/)

Einträge ohne Plattform-Flag betreffen gemeinsam genutzte Infrastruktur, CI/CD oder reine Dokumentation.


Versionsverlauf

Version 5.64.224

5.64.224 Dokumentation BASE 4. März 2026

OpenAPI: Hinweis zu eigendefinierten Feldern im Filter-Parameter

In der OpenAPI-Dokumentation der V1-API wurden Hinweise und ein Beispiel für die Filterung nach eigendefinierten Feldern ergänzt. Damit ist die Nutzung des filter-Parameters für Felder aus der Feldverwaltung klar dokumentiert.

Version 5.64.223

5.64.223 Fix BASE 4. März 2026

Grid-Filter-Reset deaktiviert nicht mehr den erweiterten Filter

Das Zurücksetzen des Schnellfilters im Grid deaktivierte fälschlicherweise den erweiterten Filterbereich. Das Verhalten wurde getrennt: Ein Reset des Schnellfilters lässt den erweiterten Filter unberührt.

Version 5.64.222

5.64.222 Fix APEX 4. März 2026

Übersetzungsimport: Stabilisierung der Upload-Pipeline

Weitere Verbesserungen am Übersetzungsimport für V2: Upload-Limits wurden angehoben, Fehlermeldungen bei ungültigen Dateien sind jetzt aussagekräftiger, und der Import schlägt nicht mehr still fehl.

Version 5.64.221

5.64.221 Fix APEX 4. März 2026

V2 Dashboard: fehlender apply-template-Endpoint ergänzt und Übersicht nach Anwendung neu geladen

Der Endpoint zum Anwenden einer Gridvorlage fehlte in der V2-API, sodass Vorlagenänderungen nicht übernommen werden konnten. Endpoint wurde hinzugefügt; nach erfolgreicher Anwendung lädt die Übersicht automatisch neu.

Version 5.64.220

5.64.220 Dokumentation 4. März 2026

Vollständige Analyse des V1-Dashboard-Widget-Systems mit V2-Migrationsplan

Eine ausführliche technische Analyse des V1-Dashboard-Widget-Systems wurde erstellt und als Entwicklerdokumentation eingecheckt. Sie enthält einen strukturierten Migrationsplan für die Portierung nach V2.

Version 5.64.219

5.64.219 Funktion APEX 4. März 2026

V2 Dashboard: Erweiterte Filter-Widgets integriert

Die erweiterten Filterwidgets aus dem Grid-Bereich wurden in die Dashboard-Ansicht von V2 integriert. Benutzer können nun direkt im Dashboard komplexe Filterbedingungen definieren und speichern.

Version 5.64.218

5.64.218 Fix APEX 4. März 2026

Übersetzungsimport für große Dateien optimiert und Fehleranzeige verbessert

Der Übersetzungsimport schlug bei großen Sprachdateien wegen Timeouts oder Speicherlimits fehl. Die Verarbeitung wurde optimiert, und Importfehler werden jetzt detailliert im Frontend angezeigt.

Version 5.64.217

5.64.217 Funktion APEX 4. März 2026

V2 JSON-Importdatei aus V1-Excel-Export generiert

Die aus V1 exportierte Excel-Sprachdatei wird automatisch in das V2-kompatible JSON-Format konvertiert und steht als Importvorlage bereit. Damit ist der initiale Sprachdatenimport von V1 nach V2 deutlich vereinfacht.

Version 5.64.216

5.64.216 Fix APEX 3. März 2026

Feldkonfigurationen in Gridvorlage-Optionen ergänzt

Beim Erstellen und Bearbeiten von Gridvorlagen in V2 fehlten die Feldkonfigurationen in den verfügbaren Optionen. Sie werden jetzt vollständig aus der Feldverwaltung geladen und können in Vorlagen eingebunden werden.

Version 5.64.215

5.64.215 Funktion APEX 3. März 2026

Übersetzungsimport und -export für V2 mit V1-kompatibler Struktur

V2 unterstützt jetzt den Import und Export von Übersetzungsdateien im selben Format wie V1. Damit können bestehende V1-Sprachdateien direkt in V2 übernommen werden.

Version 5.64.214

5.64.214 Funktion APEX 3. März 2026

Feldverwaltung: Hauptansicht-Tab mit TableMaster hinzugefügt

In der Feldverwaltung von V2 wurde ein neuer Tab „Hauptansicht" eingeführt, der die komplette Feldliste mit TableMaster (PrimeVue DataTable) anzeigt. Feldkonfigurationen sind direkt in der Tabelle editierbar.

Version 5.64.213

5.64.213 Fix APEX 3. März 2026

TypeScript-Fehler: unveränderliche Array-Operationen für readonly-Spalten

Im TypeScript-Strikt-Modus verursachten direkte Mutationen auf readonly-Arrays Compilerfehler. Die betroffenen Stellen wurden auf unveränderliche Operationen (Spread/map) umgestellt.

Version 5.64.212

5.64.212 Fix APEX 3. März 2026

Gridvorlagen: Anzeige, Import und V1/V2-Kompatibilität korrigiert

Mehrere Probleme bei Gridvorlagen in V2 wurden behoben: fehlerhafter Template-Import, Anzeigefehler in der Vorlagenliste sowie Inkompatibilitäten beim Laden von V1-Vorlagenformaten.

Version 5.64.211

5.64.211 Funktion APEX 3. März 2026

Feldverwaltung: CRUD für Gridvorlagen und neue Erstellen-Seite

In der Feldverwaltung von V2 können Gridvorlagen jetzt angelegt, bearbeitet und gelöscht werden. Dazu wurde eine eigenständige Erstellen-Seite mit vollständigem Formular implementiert. Zusätzlich wurde ein direkter „+"-Button in der Toolbar ergänzt.

Version 5.64.210

5.64.210 Fix APEX 3. März 2026

filterType-Prop für Grid-Seiten ergänzt, um erweiterte Filter zu aktivieren

Auf Grid-Seiten in V2 fehlte das filterType-Prop, das den erweiterten Filtermodus aktiviert. Nach dem Hinzufügen funktioniert die gesamte Filter-UI korrekt.

Version 5.64.209

5.64.209 Funktion APEX 3. März 2026

Erweitertes Filter-System und Gridvorlagen von V1 nach V2 portiert

Das gesamte erweiterte Filtersystem aus V1 wurde nach V2 migriert: SQL-basierte Filterbedingungen, gespeicherte Filterprofile und das Gridvorlagen-Feature stehen jetzt vollständig in der V2-Oberfläche zur Verfügung.

Version 5.64.208

5.64.208 Dokumentation 3. März 2026

API v2 als Beta/calServer 6.0 markiert; Analyse des V1-erweiterten-Filter-Systems

Die API v2 wurde in der Dokumentation als Beta-Version mit dem Zielmeilenstein calServer 6.0 ausgewiesen. Zusätzlich wurde eine technische Analyse des V1-erweiterten-Filter-Systems und ein V2-Portierungsplan als Entwicklerdokumentation ergänzt.

Version 5.64.207

5.64.207 Funktion APEX 3. März 2026

V2 Frontend: Responsives Theme mit Drawer-Navigation

Das frontend-v2 erhielt ein vollständig responsives Theme. Auf mobilen Geräten öffnet sich die Navigation als Drawer-Menü; der Desktop-Modus bleibt unverändert. Grundlage ist ein überarbeitetes Layout-System mit PrimeVue.

Version 5.64.206

5.64.206 Fix APEX 3. März 2026

V2-Demodaten-Import: falsche Feld-Mappings und vertauschte Daten korrigiert

Beim Import von Demodaten über die V2-Administrationsoberfläche wurden Felder falsch zugeordnet und einige Datensätze vertauscht eingelesen. Die Mappings wurden korrigiert und alle Demodaten werden jetzt konsistent importiert.

Version 5.64.205

5.64.205 Dokumentation 3. März 2026

API-Dokumentation: V1 und V2 in separate OpenAPI-Specs aufgeteilt

Die OpenAPI-Spezifikation wurde in zwei eigenständige Dokumente aufgeteilt – eines für die V1-API (Produktion) und eines für die V2-API (Beta). Beide sind über die Scalar API Reference separat abrufbar.

Version 5.64.204

5.64.204 Fix 3. März 2026

CI: Selenium-Node-Bereitschaft vor Behat-Tests abgewartet

Der Behat-Test-Job startete bevor der Selenium-Node vollständig hochgefahren war, was zu sporadischen Fehlern führte. Der Job wartet jetzt explizit auf den Readiness-Check des Selenium-Nodes.

Version 5.64.203

5.64.203 Fix APEX 3. März 2026

V2: Yii-Feldtypen und StatusDatabase-Kategorie für Grid-Filter korrekt gemappt; /fields-Endpoint liefert vollständige Eigenschaften

Die Feldtypen aus Yii (V1) wurden für die V2-Grid-Filter nicht korrekt übersetzt, was zu Filterfehlern führte. Gleichzeitig lieferte der /fields-Endpoint nur das interne Mapping statt der vollständigen Feldverwaltungs-Eigenschaften – beides wurde behoben.

Version 5.64.202

5.64.202 Funktion APEX 3. März 2026

Vollständiges Sprachverwaltungssystem für V2 implementiert

V2 verfügt jetzt über ein eigenständiges Sprachverwaltungssystem: Sprachen anlegen, bearbeiten, aktivieren/deaktivieren und Übersetzungen je Modul verwalten. Die Oberfläche wurde als eigenständiger Admin-Bereich umgesetzt.

Version 5.64.201

5.64.201 Funktion BASE 3. März 2026

V1-API: Inventar-Kategorien-Endpoint und OpenAPI-Dokumentation für V1/V2

Die V1-REST-API wurde um einen dedizierten Endpoint für Inventar-Kategorien erweitert. Außerdem wurden die OpenAPI-Dokumentationen für V1 und V2 getrennt und vollständig aktualisiert.

Version 5.64.200

5.64.200 Funktion APEX 3. März 2026

AG Grid durch TableMaster (PrimeVue DataTable) ersetzt

Die AG-Grid-Komponente wurde vollständig durch TableMaster – einen eigenen Wrapper um PrimeVue DataTable – ersetzt. TableMaster bietet einheitliches Styling, bessere TypeScript-Integration und native Kompatibilität mit dem Aura-Theme.

Version 5.64.199

5.64.199 Fix APEX 3. März 2026

Feldkonfiguration-Bearbeitung: withApiName-Filter entfernt und zusammengesetzter Schlüssel korrigiert

Der withApiName-Filter schloss bestimmte Felder bei der Bearbeitung fälschlicherweise aus. Zudem führte der zusammengesetzte Primärschlüssel bei Updates zu Fehlern. Beide Probleme wurden behoben.

Version 5.64.198

5.64.198 Fix APEX 3. März 2026

Merge-Konflikte beim Feld-Import/Export-Feature behoben

Konflikte zwischen dem Feld-Import/Export-Branch und dem Hauptentwicklungszweig wurden aufgelöst. Spaltennamen wurden korrigiert und das Tabellen-Trunkieren vor dem Import wurde ergänzt.

Version 5.64.197

5.64.197 Funktion APEX 3. März 2026

V2 Frontend: Sidebar-Modus-Toggle für getrennte App- und Admin-Navigation

Im frontend-v2 wurde ein Toggle ergänzt, mit dem zwischen dem Anwender-Modus und dem Admin-Modus gewechselt werden kann. Beide Bereiche erhalten dadurch separate Navigationsbäume in der Sidebar.

Version 5.64.196

5.64.196 Funktion APEX 3. März 2026

V1-Demodaten-Admin nach V2 (Laravel + Nuxt) migriert

Der bisherige V1-Admin-Bereich für Demodaten wurde vollständig in V2 (Laravel-Backend + Nuxt-Frontend) portiert. Demodaten lassen sich jetzt direkt über die V2-Administrationsoberfläche importieren und entfernen.

Version 5.64.195

5.64.195 Funktion APEX 3. März 2026

Import/Export für Feldkonfigurationen und Gridvorlagen

Feldkonfigurationen und Gridvorlagen können jetzt in V2 als JSON-Datei exportiert und wieder importiert werden. Das ermöglicht einfaches Übertragen von Konfigurationen zwischen Instanzen.

Version 5.64.194

5.64.194 Fix APEX 3. März 2026

V2-Seeder: UUID-Format auf plain VARCHAR(36) umgestellt

Test-Benutzer-IDs im Seeder wurden im falschen Format (mit Formatierungszeichen) gesetzt, was zu MySQL-Typfehlern führte. Die IDs werden jetzt als einfache UUIDs ohne Sonderzeichen gespeichert.

Version 5.64.193

5.64.193 Fix APEX 2. März 2026

V2-Seeder: Spalten-Overflows und Typkonflikte für MySQL Strict Mode behoben

Der Demodaten-Seeder erzeugte Einträge, deren Felder im MySQL-Strict-Mode Längenbeschränkungen verletzten oder Typfehler auslösten. Alle betroffenen Spalten wurden angepasst.

Version 5.64.192

5.64.192 Funktion APEX 2. März 2026

V2 Frontend: Formular-Sichtbarkeit mit PrimeVue Aura-Theme verbessert

Labels und Eingabefelder in V2-Formularen hatten im Aura-Theme zu geringen Kontrast. Schriftfarben wurden für Hell- und Dunkel-Modus angepasst, sodass alle Beschriftungen klar erkennbar sind.

Version 5.64.191

5.64.191 Funktion APEX 2. März 2026

Alle V1-Feldeigenschaften in V2-API exponiert und CRUD-Admin-Endpoints ergänzt

Die V2-API liefert jetzt alle relevanten Feldeigenschaften aus der V1-Feldverwaltung. Zusätzlich wurden vollständige CRUD-Endpoints für den Feldverwaltungs-Admin-Bereich implementiert.

Version 5.64.190

5.64.190 Fix BASE 2. März 2026

php-fpm: CMemCache-exklusive Eigenschaften beim Fallback auf CFileCache entfernt

Nach dem Fallback auf CFileCache wurden weiterhin CMemCache-spezifische Konfigurationsparameter gesetzt, was zu PHP-Notices führte. Die betroffenen Properties werden jetzt nur noch gesetzt, wenn tatsächlich Memcache aktiv ist.

Version 5.64.189

5.64.189 Fix BASE 2. März 2026

php-fpm: Automatischer Fallback auf CFileCache bei Memcache-Absturz

Wenn die Memcached-Extension während des Starts abstürzte, lief calServer ohne funktionierenden Cache. php-fpm fällt jetzt automatisch auf CFileCache zurück, sodass die Anwendung auch ohne Memcached lauffähig bleibt.

Version 5.64.188

5.64.188 Fix BASE 2. März 2026

php-fpm: Abstürzende Memcached-Extension beim Start erkannt und deaktiviert

Auf Systemen mit defekter Memcached-Extension verursachte das Laden der Extension einen php-fpm-Absturz. Ein Startup-Skript erkennt nun die problematische Extension und deaktiviert sie vor dem Start automatisch.

Version 5.64.187

5.64.187 Fix 2. März 2026

Deployment: HTTPS-Health-Check nutzt curl statt ss

Der Health-Check im Deployment-Skript verwendete ss zum Prüfen des HTTPS-Ports, was auf bestimmten Images nicht verfügbar war. Der Check wurde auf curl umgestellt und ist damit zuverlässiger.

Version 5.64.186

5.64.186 Funktion APEX 2. März 2026

V2: Feldgesteuerte Grids, Vorlagen, Zusatzfelder-API und dynamische Views

V2 unterstützt jetzt vollständig feldgesteuerte Grids: Spalten werden dynamisch aus den Feldkonfigurationen der Feldverwaltung geladen. Gridvorlagen können gespeichert und auf Views angewendet werden. Zusatzfelder sind über einen dedizierten API-Endpoint abrufbar.

Version 5.64.185

5.64.185 Fix APEX 2. März 2026

artisan-Seeder: Faker-Abhängigkeit aus TestDatabaseSeeder für Produktion entfernt

Der TestDatabaseSeeder importierte Faker-Klassen, die in der Produktionsinstallation nicht vorhanden sind. Die Abhängigkeit wurde entfernt, sodass artisan app:setup auf Produktionssystemen fehlerlos läuft.

Version 5.64.184

5.64.184 Fix APEX 2. März 2026

app:setup: RBAC-Seeding nur bei frischer Datenbank, bestehende Operationen bleiben erhalten

Bei wiederholtem Aufruf von artisan app:setup wurden RBAC-Operationen neu gesetzt und dabei bestehende Benutzerrechte überschrieben. Das Seeding wird jetzt nur ausgeführt, wenn noch keine Operationen in der Datenbank vorhanden sind.

Version 5.64.183

5.64.183 Fix BASE 2. März 2026

V1: C2321-Mapping verwendet jetzt CallSheetEx.cField5

Das Feld-Mapping für Protokolltyp C2321 referenzierte eine falsche Spalte in CallSheetEx. Das Mapping wurde auf cField5 korrigiert, sodass Kalibrierprotokolle dieses Typs korrekt ausgelesen werden.

Version 5.64.182

5.64.182 Dokumentation 2. März 2026

Standard-Super-Admin-Zugangsdaten aus Installationsanleitung entfernt

Die Installationsanleitung enthielt fest eingetragene Standardzugangsdaten für den Super-Admin-Account. Diese wurden entfernt, um zu verhindern, dass Installationen mit unsicheren Standardpasswörtern betrieben werden.

Version 5.64.181

5.64.181 Fix APEX 2. März 2026

V2-Migrationen: Phantom-Tabelle inventory_notepad entfernt und fehlende V1-Tabellen ergänzt

Eine nicht existierende Tabelle (inventory_notepad) wurde aus den Migrationen entfernt. Gleichzeitig wurden weitere fehlende V1-Tabellen ergänzt, um die vollständige Schema-Kompatibilität zwischen V1 und V2 sicherzustellen.

Version 5.64.180

5.64.180 Funktion APEX 2. März 2026

artisan demo:data-Kommando zum Seeden und Entfernen von Demodaten

Ein neues Artisan-Kommando demo:data ermöglicht es, Demodaten in die V2-Datenbank einzuspielen oder vollständig zu entfernen. Das vereinfacht das Vorbereiten von Demos und Testumgebungen erheblich.

Version 5.64.179

5.64.179 Fix APEX 2. März 2026

V2: Globale Auth-Middleware, Sidebar-Guard und Docker-Entrypoint stabilisiert

Verschiedene V2-Authentifizierungsprobleme wurden behoben: Die globale Auth-Middleware schützt jetzt alle Routen korrekt, der Sidebar-Guard verhindert unautorisierten Zugriff auf Admin-Bereiche, und der Docker-Entrypoint startet den V2-Stack zuverlässig.

Version 5.64.178

5.64.178 Fix APEX 2. März 2026

V2: RBAC-Operationen in app:setup geseedet und stiller Login-Fehler behoben

Fehlende RBAC-Operationen in der Initialdatenbank führten zu nicht nachvollziehbaren Login-Fehlern in V2. app:setup seeded jetzt alle notwendigen Operationen, und der Login-Fehler wird transparent gemeldet statt still ignoriert.

Version 5.64.177

5.64.177 Dokumentation 2. März 2026

Produktions-Deployment-Anleitung, Migrations-Dokumentation und migration.sh hinzugefügt

Die Entwicklerdokumentation wurde um eine vollständige Produktions-Deployment-Anleitung erweitert. Dazu kommen eine Migrations-Dokumentation für den Umstieg von V1 auf V2 sowie das Hilfsskript migration.sh.

Version 5.64.173 – 5.64.176

5.64.173–5.64.176 Funktion APEX 1.–2. März 2026

V2: Vollständige Laravel-Migrationen für V1-Yii-Schema (122 Tabellen) + iterative Korrekturen

Das gesamte V1-Datenbankschema (122 Tabellen) wurde als Laravel-Migrationen implementiert, damit V2 auf der identischen Datenbankstruktur wie V1 betrieben werden kann. Anschließend wurden in mehreren Iterationen Detailprobleme behoben: fehlende TEXT-Spalten-Defaults, MySQL-Index-Längenbeschränkungen, fehlende RBAC-Spalten, falsche FK-Typen und der '0000-00-00'-Datetime-Default.

Version 5.64.155

5.64.155 Fix 1. März 2026

Docker: nginx-proxy Named-Volume-Architektur wiederhergestellt und CI-Tests parallelisiert

Die nginx-proxy-Konfiguration wurde auf die bewährte Named-Volume-Architektur zurückgestellt (jwilder-Pattern), nachdem ein Bind-Mount-Versuch EISDIR-Fehler verursacht hatte. Gleichzeitig wurden die Behat/API-Tests in separate, nicht-blockierende CI-Jobs ausgelagert.

Version 5.64.154

5.64.154 Fix 1. März 2026

Docker: nginx-proxy SSL-Probleme und acme-companion-Zertifikatanbindung behoben

Mehrere zusammenhängende nginx-proxy-SSL-Fehler wurden behoben: das Anhängen des acme-companion-Containers, das Einbinden der default_location-Datei (EISDIR-Fehler) sowie verbleibende SSL-Konfigurationsprobleme nach der Image-Migration.


Historische Versionen 5.64.110 – 5.64.153

Diese Versionen wurden zwischen dem 27. Februar und dem 1. März 2026 veröffentlicht. Für diesen Zeitraum sind keine Einzeleinträge im Git-Log verfügbar. Die Entwicklung umfasste vorwiegend weitere BASE-Verbesserungen (GridViewHelper-Migrationen, Admin-Panel-Fixes, Report-Runner-Optimierungen) sowie die initiale Infrastruktur für das APEX-System (Docker-Konfiguration, erstes V2-Scaffolding).


Version 5.64.109

5.64.109 Dokumentation 27. Februar 2026

Kalibrierungskategorien in der Dokumentation ergänzt

Die Dokumentation der Kalibrierungskategorien wurde neu hinzugefügt. Benutzer und Administratoren finden nun eine vollständige Beschreibung der Kategorieverwaltung im Handbuch-Abschnitt „Kalibrierungen".

Version 5.64.108

5.64.108 Fix BASE 27. Februar 2026

Spaltennamen im Dokument-Freigabe-Grid qualifiziert

Mehrdeutige Spaltennamen im Dokument-Freigabe-Grid führten bei tabellenübergreifenden JOINs zu SQL-Fehlern. Die betroffenen Spalten werden jetzt mit dem korrekten Relationsalias qualifiziert, sodass die Freigabeliste zuverlässig geladen wird.

Version 5.64.107

5.64.107 Fix 27. Februar 2026

Report-Runner: Jackson ObjectMapper ersetzt Javalins bodyAsClass

Im Report-Runner führte Javalins eingebaute bodyAsClass-Methode bei bestimmten JSON-Nutzlasten zu Deserialisierungsfehlern. Die Verarbeitung erfolgt jetzt direkt über den Jackson-ObjectMapper und ist damit deutlich fehlertoleranter.

Version 5.64.106

5.64.106 Dokumentation 27. Februar 2026

Vollständige Dokumentationsüberarbeitung

Die gesamte MkDocs-Dokumentation wurde grundlegend überarbeitet: Seiten wurden aufgeteilt, bereinigt und inhaltlich neu geschrieben. Die Struktur ist nun konsistenter, vollständiger und erheblich besser navigierbar.

Version 5.64.105

5.64.105 Fix BASE 27. Februar 2026

Erweiterter Filterzustand bleibt bei Seitennavigation erhalten

Der erweiterte Filterstatus im Grid wurde beim Blättern oder Sortieren zurückgesetzt, sodass komplexe Suchanfragen verloren gingen. Der Filterzustand wird jetzt über Seitenwechsel und Sortieroperationen hinweg korrekt beibehalten.

Version 5.64.104

5.64.104 Funktion 26. Februar 2026

Dokumentationsnavigation in granulare Unterabschnitte gegliedert

Die Navigationsstruktur der Dokumentation wurde in fein gegliederte Unterabschnitte aufgeteilt. Benutzer können nun gezielt einzelne Themenbereiche ansteuern, ohne durch lange Seiten scrollen zu müssen.

5.64.104 Funktion APEX 26. Februar 2026

Scalar API Reference ersetzt Redoc – Postman-Collection ergänzt

Die interaktive API-Dokumentation wurde von Redoc auf Scalar API Reference umgestellt, das eine modernere Benutzeroberfläche und bessere Suchfunktionen bietet. Zusätzlich steht jetzt eine Postman-Collection zum direkten Import in Postman bereit.

Version 5.64.103

5.64.103 Fix 26. Februar 2026

GitHub Pages Deployment: Berechtigung und Retry-Logik ergänzt

Der Deployment-Workflow für GitHub Pages schlug wegen fehlender actions:read-Berechtigung fehl und hatte keinen Mechanismus zur Wiederholung bei transienten Fehlern. Beide Probleme wurden behoben.

Version 5.64.102

5.64.102 Funktion 26. Februar 2026

Notion-Exportinhalte in MkDocs-Dokumentation überführt

Alle bisher in Notion verwalteten Dokumentationsinhalte wurden in die MkDocs-Struktur migriert. Die Inhalte sind jetzt Teil der versionierten Dokumentation im Repository und werden bei jedem Deploy automatisch veröffentlicht.

5.64.102 Fix BASE 26. Februar 2026

Ungültige Spalte column_label aus Suchkriterien entfernt

Das Feld column_label wurde irrtümlich als Datenbankkriterium in Suchabfragen übergeben und verursachte SQL-Fehler, da keine entsprechende Datenbankspalte existiert. Es wurde aus den Suchkriterien entfernt.

Version 5.64.101

5.64.101 Fix 26. Februar 2026

Report-Runner: jrxmlPath-Deserialisierungsfehler behoben

Ein fehlender oder ungültiger jrxmlPath-Parameter im JSON-Request verhinderte das Laden von JasperReports-Vorlagen. Die Fehlerbehandlung wurde robuster gestaltet und gibt jetzt eine aussagekräftige Fehlermeldung zurück.

5.64.101 Fix BASE 26. Februar 2026

PHP-Fehler bei CArrayDataProvider.modelClass behoben

Ein undefinierter Property-Zugriff auf modelClass im Yii-CArrayDataProvider verursachte PHP-Notices bei bestimmten Grid-Ansichten. Der Zugriff wird jetzt defensiv geprüft, bevor er verwendet wird.

5.64.101 Funktion BASE 26. Februar 2026

18 Grid-Ansichten der Kategorie B auf GridViewHelper migriert

18 speziell angepasste Grid-Ansichten wurden auf die neue GridViewHelper-Implementierung umgestellt. Die vereinheitlichte Basis reduziert Coderedundanz und erleichtert zukünftige Anpassungen erheblich.

Version 5.64.100

5.64.100 Fix BASE 26. Februar 2026

Spaltennamen in FrontendAudit::search() qualifiziert

Nicht qualifizierte Spaltennamen in FrontendAudit::search() verursachten bei tabellenübergreifenden Datenbankabfragen mehrdeutige SQL-Fehler. Die Spalten werden jetzt vollständig mit dem Tabellenalias angegeben.

5.64.100 Funktion 26. Februar 2026

Dokumentationsplattform verfeinert (Logo, Favicon, CSS, .gitignore)

Die MkDocs-Dokumentationsplattform erhielt ein eigenes Logo und Favicon. Benutzerdefiniertes CSS wurde integriert, und eine .gitignore-Regel schließt Build-Artefakte (site/) vom Repository aus.

Version 5.64.99

5.64.99 Funktion 26. Februar 2026

MkDocs-Material-Dokumentationsplattform eingerichtet

Die technische Dokumentation für calServer wurde auf MkDocs Material aufgebaut und auf GitHub Pages deployt. Grundkonfiguration, Theme, Plugins (Suche, Lightbox, Git-Datum) und die initiale Navigationsstruktur wurden erstellt.

Version 5.64.98

5.64.98 Funktion APEX 26. Februar 2026

Demo-Daten-Seeder mit Admin-Importfunktion hinzugefügt

Ein Seeder für Demo-Daten wurde implementiert, der über eine neue Administratorfunktion ausgeführt werden kann. Damit lassen sich frische Installationen schnell mit realistischen Testdaten befüllen.

Version 5.64.97

5.64.97 Fix BASE 26. Februar 2026

Adminseite für Kategorien ergänzt, Testschritt-Admin-404-Fehler behoben

Die Administrationsoberfläche für Kategorien fehlte vollständig. Zusätzlich lieferten mehrere Admin-Pfade für Testschritte 404-Fehler. Beide Probleme wurden gleichzeitig behoben.

Version 5.64.96

5.64.96 Fix BASE 26. Februar 2026

DMS-Browser: elFinder-View-Fehler behoben

Beim Öffnen des elFinder-Dateimanagers im DMS-Browser (Dokumentenmanagementsystem) trat ein „View not found"-Fehler auf. Die fehlende View-Referenz wurde korrigiert.

Version 5.64.94

5.64.94 Fix 26. Februar 2026

Report-Runner: Leeres parameters-Array wird korrekt behandelt

Ein leeres parameters-Array im JSON-Request an den Report-Runner führte zu einem Deserialisierungsfehler. Der Grenzfall wird jetzt explizit behandelt und resultiert nicht mehr in einem Serverfehler.

Version 5.64.93

5.64.93 Funktion BASE 26. Februar 2026

Phase 4: Adminpanel-Grids auf GridViewHelper v2 migriert

Mit Phase 4 wurden alle Grids im Adminpanel-Modul auf die v2-GridViewHelper-Implementierung umgestellt. Damit ist die mehrstufige Grid-Migration der gesamten Administrationsoberfläche abgeschlossen.

Version 5.64.92

5.64.92 Fix 26. Februar 2026

Report-Runner-Architektur: Automatischer Fallback auf Legacy-Engine

War der Report-Runner-Dienst nicht erreichbar, schlug die Berichtserstellung ohne jegliches Fallback fehl. Die Architektur wurde erweitert: Bei Nichterreichbarkeit des Report-Runners wird nun automatisch auf die bewährte Legacy-Engine (JasperStarter) zurückgefallen.

Version 5.64.86 – 5.64.91

5.64.86–5.64.91 Funktion BASE 25. Februar 2026

GridViewHelper Phase 3: Kalibrierung- und Inventar-Module migriert

Die Kalibrierung-Haupt-Grids sowie die Inventarverwaltung wurden auf die v2-GridViewHelper-Implementierung umgestellt. Spalten-Selektor, erweiterter Filter und einheitliches Paginierungsverhalten sind damit auch in diesen Kernmodulen verfügbar.

Version 5.64.75 – 5.64.85

5.64.75–5.64.85 Funktion BASE 25. Februar 2026

GridViewHelper Phase 2: Prüfmittel- und Aufgaben-Module migriert

Prüfmittelverwaltung, Aufgabenliste und verwandte Unteransichten wurden auf GridViewHelper v2 umgestellt. Konsistente Export-Buttons und Spaltenkonfiguration stehen nun auch dort zur Verfügung.

5.64.75–5.64.85 Fix BASE 25. Februar 2026

Nicht qualifizierte Spaltennamen in mehreren Grid-Suchmethoden korrigiert

Bei tabellenübergreifenden Joins in verschiedenen Modulen entstanden SQL-Fehler durch mehrdeutige Spaltennamen. Alle betroffenen search()-Methoden wurden mit vollständigen Tabellenaliassen versehen.

Version 5.64.60 – 5.64.74

5.64.60–5.64.74 Funktion BASE 24. Februar 2026

GridViewHelper Phase 1: Stammdaten-Grids auf einheitliche Basis migriert

In Phase 1 wurden alle Stammdaten-Grids (Hersteller, Lieferanten, Kontakte, Standorte) auf die neue GridViewHelper-Basis umgestellt. Damit ist eine konsistente Filterfunktion und Export-Option in allen Stammdaten-Ansichten gewährleistet.

5.64.60–5.64.74 Fix BASE 24. Februar 2026

Report-Runner: Initialisierung und Konfigurationsvalidierung stabilisiert

Beim Start des Report-Runner-Dienstes führten fehlende Konfigurationsparameter zu stillen Fehlern. Die Initialisierungsroutine prüft jetzt alle Pflichtparameter und gibt verständliche Fehlermeldungen aus, wenn die Konfiguration unvollständig ist.

Version 5.64.50 – 5.64.59

5.64.50–5.64.59 Funktion BASE 23. Februar 2026

Report-Runner: JasperReports-Integration mit Micro-Service-Architektur

Ein eigenständiger Report-Runner-Microservice (Java/Javalin) wurde eingeführt, der JasperReports-Vorlagen rendert und als REST-Endpoint bereitstellt. Der bisherige JasperStarter-Prozessaufruf bleibt als Fallback erhalten.

5.64.50–5.64.59 Fix BASE 23. Februar 2026

DMS: elFinder-Pfadkonfiguration und Rechtevergabe korrigiert

elFinder startete mit falschen Basispfaden und ignorierte in bestimmten Fällen die konfigurierten Zugriffsrechte. Beide Probleme wurden in der Connector-Konfiguration behoben.

Version 5.64.35 – 5.64.49

5.64.35–5.64.49 Funktion BASE 22. Februar 2026

Admin-Panel: Kategorie-, Testschritt- und Normenverwaltung ausgebaut

Die Administrationsoberfläche für Kalibrierungskategorien, Testschrittvorlagen und Normen wurde vollständig neu implementiert. CRUD-Aktionen, Listenansichten und Validierungsregeln entsprechen jetzt dem einheitlichen Admin-Standard.

5.64.35–5.64.49 Fix BASE 22. Februar 2026

Filterparameter aus URL-Übergabe werden korrekt deserialisiert

Gespeicherte Filterzustände in der URL-Query wurden beim Seitenneuaufruf teilweise falsch interpretiert, was zu leeren Grids führte. Die Deserialisierungslogik wurde korrigiert.

Version 5.64.20 – 5.64.34

5.64.20–5.64.34 Funktion BASE 21. Februar 2026

Demodaten-Seeder: vollständiger Admin-Import-Workflow implementiert

Ein vollständiger Workflow zum Importieren und Entfernen von Demodaten über das Admin-Panel wurde implementiert. Seeder-Klassen für alle Kernmodule (Inventar, Prüfmittel, Kalibrierungen, Dokumente) wurden erstellt.

5.64.20–5.64.34 Fix BASE 21. Februar 2026

Massenbearbeitung: Datumswerte werden korrekt gespeichert

Bei der Massenbearbeitung mehrerer Datensätze wurden Datumsfelder in einigen Fällen mit falschen Zeitzonen-Offsets gespeichert. Die Datumsverarbeitung wurde auf UTC-Basis normiert.

Version 5.64.10 – 5.64.19

5.64.10–5.64.19 Funktion BASE 20. Februar 2026

GridViewHelper v2: Grundlage für einheitliche Grid-Implementierung geschaffen

Die neue GridViewHelper-v2-Klasse wurde entwickelt. Sie kapselt Spalten-Selektor, Export-Button, erweiterten Filter und Paginierung in einer einheitlichen Basis, die von allen Grid-Ansichten genutzt werden kann.

5.64.10–5.64.19 Fix BASE 20. Februar 2026

Caching: Session-basierter Grid-State bleibt nach Login erhalten

Der gespeicherte Filterstatus im Grid ging nach einem erneuten Login verloren, weil er an die Session-ID gebunden war. Der State wird jetzt benutzergebunden im Datenbankprofil gespeichert.

Version 5.64.0 – 5.64.9

5.64.0–5.64.9 Funktion BASE 19. Februar 2026

Minor 5.64 gestartet: Fokus auf Grid-Infrastruktur und Report-Runner

Mit Minor 5.64 beginnt ein neuer Entwicklungszyklus mit dem Schwerpunkt Vereinheitlichung der Grid-Implementierung (GridViewHelper v2) und Einführung des eigenständigen Report-Runner-Microservices. Erste Infrastrukturarbeiten für APEX (V2) laufen parallel.

5.64.0–5.64.9 Fix BASE 19. Februar 2026

PHP 7.4-Kompatibilität: typed properties und nullsafe operator entfernt

Vereinzelte PHP-8-Syntax-Konstrukte (typed properties, ?->) wurden identifiziert und auf PHP-7.4-kompatible Schreibweisen zurückgeführt, um die Produktionskompatibilität sicherzustellen.

Version 5.63.x

5.63 Funktion APEX 18. Februar 2026

V2-Infrastruktur: Docker-Compose-Stack für Laravel + Nuxt initialisiert

Die initiale Docker-Compose-Konfiguration für das V2-System (Laravel-Backend + Nuxt-Frontend + nginx-Reverse-Proxy) wurde erstellt. Lokale Entwicklungsumgebung und Produktions-Stack laufen auf derselben Basis.

5.63 Funktion APEX 17. Februar 2026

V2: Laravel-Projektgerüst und grundlegende API-Route-Struktur aufgesetzt

Das Laravel-Backend für calServer V2 wurde initialisiert. Grundlegende API-Routen (Auth, Inventar, Kalibrierungen) wurden als Skelett angelegt und mit Middleware für CORS und Sanctum-Authentifizierung ausgestattet.

5.63 Funktion BASE 16. Februar 2026

Buchungsansicht für Prüfmittelreservierungen eingeführt

Eine neue Buchungsansicht ermöglicht das Planen und Verwalten von Prüfmittelreservierungen. Kalenderübersicht, Konfliktprüfung und Benachrichtigungen bei Überschneidungen sind integriert.

5.63 Fix BASE 15. Februar 2026

Zertifikats-Download: PDF-Generierung bei Sonderzeichen in Gerätenamen stabilisiert

Gerätenamen mit Sonderzeichen (Umlaute, Schrägstriche) führten beim PDF-Export von Kalibrierzertifikaten zu Zeichensatz-Fehlern. Die Dateinamen-Sanitierung und Encoding-Behandlung wurden korrigiert.

5.63 Fix BASE 15. Februar 2026

Fälligkeits-Ampel: Farbcodierung bei Geräten ohne nächstes Kalibrierdatum korrigiert

Geräte ohne eingetragenes nächstes Kalibrierdatum wurden in der Fälligkeits-Ampel fälschlicherweise als „überfällig" (rot) angezeigt. Sie erscheinen jetzt korrekt als „nicht geplant" (grau).

Version 5.62.x

5.62 Funktion BASE 13. Februar 2026

Massenbearbeitung: Kalibrierintervall für mehrere Geräte gleichzeitig setzen

Aus der Inventarliste können jetzt mehrere Geräte selektiert und deren Kalibrierintervall in einem einzigen Schritt aktualisiert werden. Die Funktion ist über die bestehende Massenbearbeitungs-Toolbar zugänglich.

5.62 Funktion BASE 12. Februar 2026

Kalibrierprotokoll: Messwert-Tabellen mit konfigurierbaren Spalten

Kalibrierprotokolle unterstützen jetzt konfigurierbare Messwert-Tabellen, bei denen Spaltenzahl, Bezeichnungen und Einheiten je Protokollvorlage individuell eingestellt werden können.

5.62 Fix BASE 11. Februar 2026

Report-Runner-Verbindungsfehler werden im Frontend sichtbar gemeldet

Wenn der Report-Runner nicht erreichbar war, zeigte das Frontend einen generischen „500"-Fehler ohne Kontext. Der Fehler wird jetzt als verständliche Meldung mit Hinweis auf den Dienststatus angezeigt.

5.62 Fix BASE 10. Februar 2026

Standortwechsel eines Geräts erzeugt korrekten Audit-Log-Eintrag

Der Wechsel eines Geräts auf einen neuen Standort wurde im Audit-Log nicht als eigenständiges Ereignis protokolliert. Ein dedizierter moved-Ereignistyp wurde ergänzt, der alten und neuen Standort aufzeichnet.

5.62 Funktion BASE 10. Februar 2026

Dokumentenfreigabe: zeitlich befristete Freigabelinks

Dokumente im DMS können jetzt mit einem zeitlich befristeten Freigabelink geteilt werden. Nach Ablauf des Gültigkeitszeitraums ist der Link automatisch deaktiviert.

Version 5.61.x

5.61 Funktion BASE 8. Februar 2026

Etikettendruck: ZPL-Vorlageneditor im Admin-Panel

Im Admin-Panel wurde ein Etiketten-Vorlageneditor eingeführt, mit dem ZPL-Druckvorlagen für Zebra-Drucker direkt in calServer bearbeitet werden können. Vorlagen können mit Gerätedaten und QR-Code befüllt werden.

5.61 Funktion BASE 7. Februar 2026

Kalibrieraufträge: externe Dienstleister mit Auftragsreferenz verknüpfen

Kalibrieraufträge, die an externe Kalibrierlabore vergeben werden, können jetzt mit einer Auftragsreferenz und dem Dienstleister verknüpft werden. Der Status des externen Auftrags ist im Geräteverlauf nachvollziehbar.

5.61 Fix BASE 6. Februar 2026

Benutzereinstellungen: Sprach- und Zeitzonenauswahl wirkt sofort

Nach dem Ändern von Sprache oder Zeitzone in den Benutzereinstellungen waren die neuen Werte erst nach erneutem Login aktiv. Die Einstellungen werden jetzt ohne Logout-/Login-Zyklus übernommen.

5.61 Fix BASE 5. Februar 2026

Prüfmittelverwaltung: Gerät lässt sich nicht löschen, solange offene Kalibrieraufträge bestehen

Geräte mit offenen Kalibrieraufträgen konnten bisher gelöscht werden, was zu verwaisten Auftragsreferenzen führte. Eine Validierung verhindert das Löschen jetzt und weist auf die offenen Aufträge hin.

Version 5.60.x

5.60 Funktion BASE 3. Februar 2026

Performance: Datenbankindizes für Fälligkeitsabfragen optimiert

Die Abfragen zur Ermittlung fälliger und überfälliger Prüfmittel liefen bei großen Datenbeständen zu langsam. Neue zusammengesetzte Indizes auf next_calibration_date und status reduzierten die Abfragezeiten um bis zu 80 %.

5.60 Funktion BASE 2. Februar 2026

Memcached-Integration für Session- und Query-Caching aktiviert

calServer nutzt jetzt Memcached für das Caching von Datenbankabfragen, Sessions und konfigurierten Grid-States. Die Konfiguration erfolgt über die Admin-Einstellungen und ist für Multi-Node-Setups ausgelegt.

5.60 Fix BASE 1. Februar 2026

Audit-Log: Massenlöschungen werden als einzelnes Batch-Ereignis protokolliert

Beim Massenlöschen von Datensätzen wurde für jeden Eintrag ein separates Audit-Log-Ereignis erzeugt, was zu Tausenden von Einträgen in einem einzigen Vorgang führte. Massenoperationen werden jetzt als ein einziges Batch-Ereignis mit Anzahl und Zeitstempel geloggt.

5.60 Fix BASE 1. Februar 2026

LDAP-Login: Benutzergruppen werden bei jedem Anmelden synchronisiert

LDAP-Benutzergruppen wurden beim Login nur beim ersten Anlegen des Accounts synchronisiert. Änderungen an der Gruppenzugehörigkeit im Verzeichnis wurden danach nicht mehr übernommen. Die Synchronisierung erfolgt jetzt bei jedem Anmelden.

Version 5.59.x

5.59 Funktion BASE 28. Januar 2026

OPcache-Konfiguration für Produktionsumgebung optimiert

Die PHP-OPcache-Einstellungen wurden für calServer-Produktionsumgebungen optimiert: opcache.validate_timestamps=0 und erhöhte Memory-Limits reduzieren den CPU-Overhead beim Request-Handling deutlich.

5.59 Fix BASE 27. Januar 2026

Rollenbasierte Zugriffssteuerung: fehlende Operationen für neue Module ergänzt

Bei der Einführung neuer Funktionsmodule wurden die zugehörigen RBAC-Operationen nicht vollständig angelegt, sodass Administratoren neue Berechtigungen nicht konfigurieren konnten. Alle fehlenden Operationen wurden nachgepflegt.

5.59 Fix BASE 26. Januar 2026

Protokollvorlage: Grenzwert-Prüfung schlägt nicht fehl bei leeren Messwerten

Wenn Messwert-Felder in Kalibrierprotokollen leer gelassen wurden, löste die Grenzwert-Prüfung einen Fehler aus statt das Feld zu überspringen. Leere Felder werden jetzt korrekt als „nicht gemessen" behandelt.

Version 5.58.x

5.58 Funktion BASE 25. Januar 2026

LDAP/Active Directory: Single-Sign-On-Unterstützung

calServer unterstützt jetzt die Anmeldung über Active Directory via LDAP. Benutzerdaten werden beim ersten Login automatisch angelegt; die Gruppenzugehörigkeit steuert die calServer-Rollen.

5.58 Funktion BASE 24. Januar 2026

API v1: OAuth2-Unterstützung für Drittanwendungen

Die REST-API v1 wurde um OAuth2 (Client-Credentials-Flow) ergänzt. Drittanwendungen können sich mit einem API-Schlüssel authentifizieren und auf freigegebene Endpunkte zugreifen, ohne Benutzeranmeldedaten zu verwenden.

5.58 Fix BASE 23. Januar 2026

Passwort-Reset-Link läuft nach 24 Stunden korrekt ab

Passwort-Reset-Links blieben dauerhaft gültig, wenn der Token nicht gelöscht wurde. Die Token werden jetzt mit einem 24-Stunden-Ablaufzeitstempel versehen und nach Nutzung sofort ungültig gemacht.

Version 5.57.x

5.57 Funktion BASE 21. Januar 2026

REST-API: Rate-Limiting und API-Schlüssel-Verwaltung im Admin-Panel

Die V1-REST-API erhielt eine Rate-Limiting-Funktion (konfigurierbar pro API-Schlüssel). API-Schlüssel können im Admin-Panel angelegt, gesperrt und gelöscht werden. Nutzungsstatistiken sind je Schlüssel abrufbar.

5.57 Funktion BASE 20. Januar 2026

API v1: Bulk-Endpoint für Inventar-Import

Ein neuer /inventories/bulk-Endpoint ermöglicht den massenweisen Import von Inventardaten über die API. JSON-Payload mit bis zu 500 Geräten pro Anfrage wird unterstützt.

5.57 Fix BASE 19. Januar 2026

API-Antworten: ISO-8601-Datumsformat für alle Zeitstempel normiert

API-Endpunkte lieferten Datumswerte in gemischten Formaten (MySQL-Format, Unix-Timestamp, ISO-8601). Alle Datumsfelder werden jetzt einheitlich als ISO-8601-String zurückgegeben.

Version 5.56.x

5.56 Funktion BASE 17. Januar 2026

Grid-Infrastruktur: Spalten-Selektor als globale Komponente eingeführt

Ein wiederverwendbarer Spalten-Selektor wurde als globale Yii-Widget-Komponente implementiert. Er erlaubt Benutzern, sichtbare Spalten je Grid-Ansicht individuell auszuwählen; die Auswahl wird benutzerbezogen gespeichert.

5.56 Funktion BASE 16. Januar 2026

Grid-Infrastruktur: Server-Side-Processing für alle Haupt-Grids aktiviert

Alle Haupt-Grids nutzen jetzt serverseitiges Filtern, Sortieren und Paginieren. Damit lädt nur der jeweils sichtbare Ausschnitt, was die Performance bei großen Datenmengen erheblich verbessert.

5.56 Fix BASE 15. Januar 2026

Grid-Export: Excel-Dateien enthalten jetzt alle Zeilen, nicht nur die aktuelle Seite

Beim Excel-Export aus einem paginierten Grid wurden nur die aktuell sichtbaren Zeilen exportiert. Der Export berücksichtigt jetzt alle gefilterten Zeilen unabhängig von der Paginierung.

Version 5.55.x

5.55 Funktion BASE 12. Januar 2026

Kundenportal: Zertifikate und Berichte extern abrufbar

Ausgewählte Kunden erhalten Zugang zu einem schreibgeschützten Kundenportal, über das sie ihre Kalibrierzertifikate und Prüfberichte direkt herunterladen können – ohne eigenen calServer-Account.

5.55 Funktion BASE 11. Januar 2026

Benachrichtigungen: WhatsApp- und Teams-Webhook-Integration

Neben E-Mail können Fälligkeits- und Eskalationsbenachrichtigungen jetzt auch über WhatsApp Business-API oder Microsoft Teams Webhooks versendet werden. Die Konfiguration erfolgt im Benachrichtigungsmodul.

5.55 Fix BASE 10. Januar 2026

Dashboard-Widgets: Kacheln werden nach Verschieben korrekt gespeichert

Das Dashboard erlaubt das individuelle Anordnen von Widgets per Drag-and-Drop. Die neue Reihenfolge wurde jedoch nach einem Seiten-Reload nicht wiederhergestellt. Das Speichern der Widget-Positionen wurde korrigiert.

Version 5.54.x

5.54 Funktion BASE 8. Januar 2026

Eichpflichtige Geräte: gesonderte Eichfrist-Überwachung

Gesetzlich eichpflichtige Messgeräte erhalten jetzt ein eigenes Überwachungs-Flag. Eichfristen werden separat von Kalibrierterminen verwaltet und erscheinen in der Fälligkeitsübersicht mit eigenem Kennzeichen.

5.54 Fix BASE 7. Januar 2026

Normenverwaltung: verknüpfte Prüfverfahren nach Normenupdate korrekt aktualisiert

Wenn eine Norm auf eine neue Revision aktualisiert wurde, referenzierten verknüpfte Prüfverfahren weiter die alte Revision. Die Relationen werden jetzt beim Normupdate automatisch auf die aktuelle Revision umgestellt.

Version 5.53.x

5.53 Funktion BASE 5. Januar 2026

Lazy-Loading für Anhänge und Dokumentenvorschauen

Anhänge und Dokumentvorschauen in Detail-Ansichten werden jetzt lazy geladen. Seiten mit vielen Anhängen öffnen deutlich schneller, da Vorschaubilder erst beim Scrollen in den sichtbaren Bereich geladen werden.

5.53 Fix BASE 4. Januar 2026

Tabellarische Berichte: Spaltenbreiten in PDF-Ausgabe normiert

In exportierten PDF-Berichten überlappten Tabellenspalten bei langen Textwerten. Die Spaltenbreiten werden jetzt dynamisch berechnet und bei Bedarf auf eine neue Seite umgebrochen.

Version 5.52.x

5.52 Funktion BASE 2. Januar 2026

Kostenverfolgung: Jahresbudgets und Kostenvergleich nach Kostenstellen

Im Kostenmodul können jetzt Jahresbudgets je Kostenstelle hinterlegt werden. Ein Dashboard-Widget zeigt den Budgetverbrauch im Jahresverlauf und ermöglicht den Vergleich mehrerer Kostenstellen.

5.52 Fix BASE 1. Januar 2026

Schadensmeldungen: Foto-Upload funktioniert auch bei HEIC-Dateien von iOS

iOS-Geräte erzeugen standardmäßig HEIC-Bilder, die beim Hochladen zu Fehlern führten. HEIC-Dateien werden serverseitig automatisch nach JPEG konvertiert.

Version 5.51.x

5.51 Funktion BASE 29. Dezember 2025

Schadensmeldungsmodul mit Workflow und Eskalation

Ein vollständiges Schadensmeldungsmodul wurde eingeführt: Schadenserfassung, Foto-Dokumentation, Schadensklassifizierung und Eskalations-Workflow bis zur Freigabe durch den Vorgesetzten.

5.51 Fix BASE 28. Dezember 2025

Serienaufgaben: Ausnahmedaten werden korrekt berücksichtigt

Bei Serienaufgaben mit eingetragenen Ausnahmedaten (z. B. Feiertage) wurden die Folgetermine nicht neu berechnet. Die Ausnahmelogik im Recurrence-Engine wurde korrigiert.

Version 5.50.x

5.50 Funktion BASE 24. Dezember 2025

Wartungsplanung: Wartungsintervalle und Teile-Tracking

Das Wartungsplanungsmodul wurde um Teile-Tracking erweitert: Verbrauchsteile können Geräten zugeordnet, ihre Lebensdauer überwacht und Austauschdaten im Wartungsplan eingeplant werden.

5.50 Fix BASE 23. Dezember 2025

Checklisten: Checklistenpunkte lassen sich per Drag-and-Drop neu ordnen

Die Reihenfolge von Checklistenpunkten konnte bisher nur über manuelle Nummerierung geändert werden. Ein Drag-and-Drop-Interface ermöglicht jetzt das direkte Umsortieren in der Listenansicht.

Version 5.49.x

5.49 Funktion BASE 20. Dezember 2025

Checklisten-Designer: Vorlagen mit Bedingungslogik

Der Checklisten-Designer unterstützt jetzt Bedingungslogik: Folgefragen werden nur eingeblendet, wenn eine Elternfrage mit einem bestimmten Wert beantwortet wird. Dies ermöglicht adaptive Prüfchecklisten.

5.49 Fix BASE 19. Dezember 2025

Serviceaufträge: Status-Übergang „in Bearbeitung → abgeschlossen" sendet Benachrichtigung

Nach dem Abschließen eines Serviceauftrags erhielt der Auftraggeber keine automatische Benachrichtigung. Der fehlende Trigger im Workflow wurde ergänzt.

Version 5.48.x

5.48 Funktion BASE 15. Dezember 2025

Service-Management: Reparaturverfolgung mit Kostenerfassung

Das Service-Modul wurde um Reparaturverfolgung erweitert: Reparaturen können mit Arbeitszeit, Ersatzteilkosten und Dienstleisterrechnungen erfasst werden. Eine Gesamtkostenübersicht je Gerät ist abrufbar.

5.48 Fix BASE 14. Dezember 2025

Wartungsberichte: leere Seiten bei Geräten ohne Wartungshistorie entfernt

Wurden Geräte ohne bisherige Wartungseinträge in einen Wartungsbericht eingeschlossen, entstanden leere Seiten im PDF. Geräte ohne Datensätze werden jetzt übersprungen und im Bericht als Hinweis vermerkt.

Version 5.47.x

5.47 Funktion BASE 10. Dezember 2025

Kennzeichnungsdruck: QR-Code-Generierung und Druckwarteschlange

Geräte-Etiketten mit QR-Code können jetzt direkt aus der Geräteansicht gedruckt werden. Eine Druckwarteschlange erlaubt das Sammeln mehrerer Etiketten und den Stapeldruck auf Zebra-kompatiblen Etikettendruckern.

5.47 Fix BASE 9. Dezember 2025

QR-Code-Scanner: Gerät wird direkt in der Mobil-Ansicht geöffnet

Nach dem Scannen eines QR-Codes wurde die Desktop-Ansicht geöffnet, auch wenn der Scan von einem Mobilgerät ausging. Die Weiterleitung berücksichtigt jetzt den Gerätetyp und öffnet die optimierte Mobil-Ansicht.

Version 5.46.x

5.46 Funktion BASE 5. Dezember 2025

Akkreditierungsmanagement: DAkkS-Scope und Referenznormale verwalten

Ein dediziertes Akkreditierungsmodul ermöglicht die Verwaltung des DAkkS-Akkreditierungsscopes, der zugehörigen Referenznormale und der Kalibrierungsketten. Gültigkeitszeiträume werden automatisch überwacht.

5.46 Fix BASE 4. Dezember 2025

Rückverfolgbarkeitskette: nationale Referenznormale werden korrekt dargestellt

Die Anzeige der Kalibrierungskette bis zum nationalen Normal endete vorzeitig, wenn ein Zwischenglied keine vollständige Zertifikatsinformation enthielt. Die Darstellung setzt jetzt auf die nächstverfügbare Referenz auf.

Version 5.45.x

5.45 Funktion BASE 1. Dezember 2025

Validierungsworkflow: IQ/OQ/PQ-Dokumentation integriert

Der Validierungsworkflow wurde um die Phasen Installationsqualifizierung (IQ), Betriebsqualifizierung (OQ) und Leistungsqualifizierung (PQ) erweitert. Freigabeprotokolle werden automatisch generiert und im DMS abgelegt.

5.45 Fix BASE 30. November 2025

Freigabeworkflow: parallele Freigaben blockieren sich nicht gegenseitig

Wenn zwei Benutzer gleichzeitig einen Freigabeprozess an einem Dokument starteten, kam es zu Sperrkonflikten. Der Workflow setzt jetzt optimistic locking ein, um parallele Freigaben korrekt zu koordinieren.

Version 5.44.x

5.44 Funktion BASE 26. November 2025

Mess-Checklisten: Fotodokumentation direkt in der Checkliste

Checklisten unterstützen jetzt Fotopunkte: Bilder können per Kamera oder Upload direkt einem Checklistenpunkt zugeordnet werden. Die Fotos erscheinen im Prüfbericht neben dem jeweiligen Punkt.

5.44 Fix BASE 25. November 2025

Gerätegruppen-Kalibrierung: alle Gruppenmitglieder werden korrekt abgehakt

Beim Abschließen einer Gruppenkalibrierung wurden nicht immer alle Gruppenmitglieder auf „kalibriert" gesetzt, wenn ein Gerät kurzfristig aus der Gruppe entfernt und wieder hinzugefügt worden war. Der Statusübergang wurde korrigiert.

Version 5.43.x

5.43 Funktion BASE 21. November 2025

Eskalationsstufen: automatische Eskalation bei Überfälligkeit

Das Eskalationsmodul wurde erweitert: Überfällige Kalibrierungen durchlaufen automatisch konfigurierbare Eskalationsstufen. Je Stufe können verschiedene Empfänger und Benachrichtigungskanäle definiert werden.

5.43 Fix BASE 20. November 2025

In-App-Benachrichtigungen: Anzahl ungelesener Nachrichten wird korrekt gezählt

Der Zähler für ungelesene Benachrichtigungen im Header wurde nicht in Echtzeit aktualisiert und zeigte nach dem Lesen von Nachrichten eine falsche Zahl an. Der Zähler wird jetzt nach jedem Lesevorgang korrekt aktualisiert.

Version 5.42.x

5.42 Funktion BASE 17. November 2025

Protokollvorlagen: tabellarische Messerfassung mit Grenzwert-Prüfung

Kalibrierprotokolle unterstützen jetzt vollständig tabellarische Messerfassung. Grenzwerte (obere/untere Toleranz) werden je Messpunkt definiert; Abweichungen werden automatisch farbig hervorgehoben.

5.42 Fix BASE 16. November 2025

Protokollimport: Messwerte aus Excel-Tabellen werden korrekt zugeordnet

Beim Import von Messdaten aus Excel-Tabellen wurden Werte mit Komma-Dezimaltrennzeichen fälschlicherweise als Text interpretiert. Die Parsing-Logik erkennt jetzt sowohl Punkt als auch Komma als Dezimaltrennzeichen.

Version 5.41.x

5.41 Funktion BASE 12. November 2025

Benutzerdefinierte Felder: Feldtypen Datum, Auswahlliste und Mehrfachauswahl

Die Feldverwaltung wurde um die Typen „Datum", „Auswahlliste" und „Mehrfachauswahl" erweitert. Felder dieser Typen können an Inventar, Kalibrierung und andere Hauptentitäten angehängt werden.

5.41 Fix BASE 11. November 2025

Pflichtfelder: Validierung greift auch bei Massenbearbeitung

Beim Massenbearbeitungs-Dialog wurden Pflichtfeld-Validierungen übersprungen, sodass Pflichtfelder leer gespeichert werden konnten. Die Validierungslogik wurde in den Massenbearbeitungs-Workflow integriert.

Version 5.40.x

5.40 Funktion BASE 7. November 2025

Externe Dienstleister: Angebots- und Rechnungsverwaltung

Für externe Kalibrierlabore können jetzt Angebote, Auftragsbestätigungen und Rechnungen direkt in calServer verwaltet und mit den jeweiligen Kalibrieraufträgen verknüpft werden.

5.40 Fix BASE 6. November 2025

Kostenstellenzuordnung: Geräte erben Kostenstelle des Standorts automatisch

Neu angelegte Geräte an einem Standort mit hinterlegter Kostenstelle erhielten diese nicht automatisch. Die Kostenstelle wird jetzt beim Anlegen eines Geräts vorbelegt und kann individuell überschrieben werden.

Version 5.39.x

5.39 Funktion BASE 3. November 2025

Kostenerfassung: Kalibrierkosten je Gerät und Auswertung nach Kostenstellen

Kalibrierkosten (intern und extern) können jetzt je Kalibriervorgang erfasst werden. Eine Auswertungsübersicht zeigt Gesamtkosten je Gerät, Kostenstelle und Zeitraum.

5.39 Fix BASE 2. November 2025

Wiederkehrende Kalibrierungen: Terminberechnung nach Schaltjahr korrekt

Im Schaltjahr wurde der nächste Kalibrierterminin einigen Fällen einen Tag früher berechnet, wenn das letzte Datum in der Nähe des 29. Februar lag. Die Datumsarithmetik wurde korrigiert.

Version 5.38.x

5.38 Funktion BASE 29. Oktober 2025

Benachrichtigungsregeln: komplexe Filterbedingungen für Ereignis-Trigger

Im Benachrichtigungsmodul können jetzt komplexe Filterbedingungen für Ereignis-Trigger definiert werden. Beispiel: Benachrichtigung nur, wenn Gerät zu einer bestimmten Kostenstelle gehört und der Standort „Produktion" ist.

5.38 Fix BASE 28. Oktober 2025

E-Mail-Versand: Anhänge über 5 MB werden korrekt als Link versendet

Große Anhänge (> 5 MB) wurden bei direktem Anhang an E-Mails vom Mailserver abgelehnt. Große Anhänge werden jetzt als sicherer Download-Link in der E-Mail eingebettet.

Version 5.37.x

5.37 Funktion BASE 24. Oktober 2025

Rückverfolgbarkeit: vollständige Kalibrierungskette bis zum nationalen Normal

Die Rückverfolgbarkeitsansicht zeigt jetzt die vollständige Kalibrierungskette eines Geräts bis zum nationalen Referenznormal (z. B. PTB). Zertifikatsdaten und Messunsicherheiten werden je Kettenglied angezeigt.

5.37 Fix BASE 23. Oktober 2025

Kalibrierzertifikat-Import: doppelte Zertifikatsnummern werden erkannt

Beim manuellen Import von Kalibrierzertifikaten konnten Duplikate mit identischer Zertifikatsnummer erstellt werden. Eine Eindeutigkeitsprüfung verhindert jetzt das Anlegen von Duplikaten und schlägt Zusammenführung vor.

Version 5.36.x

5.36 Funktion BASE 19. Oktober 2025

Prüfberichte: digitale Unterschrift mit Signaturpad

Prüfberichte können jetzt mit einer digitalen Unterschrift versehen werden. Auf Touch-Geräten steht ein Signaturpad zur Verfügung; der Unterschriften-Block wird im PDF-Bericht eingebettet.

5.36 Fix BASE 18. Oktober 2025

Prüfberichts-PDF: Kopfzeile mit Firmenlogo wird auf allen Seiten gedruckt

Das Firmenlogo in der Kopfzeile erschien nur auf der ersten Seite eines mehrseitigen Prüfberichts. Die JasperReports-Vorlage wurde korrigiert, sodass Logo und Kopfzeile auf allen Seiten gedruckt werden.

Version 5.35.x

5.35 Funktion BASE 14. Oktober 2025

Risikobasierte Kalibrierintervalle: Bewertungsmatrix im Admin-Panel

Im Admin-Panel wurde eine konfigurierbare Bewertungsmatrix für risikobasierte Kalibrierintervalle eingeführt. Je nach Gerätekritikalität und Einsatzumgebung werden automatisch angepasste Intervalle vorgeschlagen.

5.35 Fix BASE 13. Oktober 2025

Intervalloptimierung: Geräte mit konstant bestandenen Kalibrierungen erhalten verlängerten Vorschlag

Die Intervalloptimierungslogik berücksichtigt jetzt die Kalibrierhistorie: Geräte, die konsistent innerhalb der Toleranz kalibriert wurden, erhalten automatisch einen Vorschlag für ein verlängertes Intervall.

Version 5.34.x

5.34 Funktion BASE 9. Oktober 2025

Anhänge: Drag-and-Drop-Upload mit Vorschaufunktion

Alle Anhangsbereiche unterstützen jetzt Drag-and-Drop. Bilder werden direkt als Vorschau angezeigt; PDFs öffnen sich in einem integrierten Viewer. Unterstützt werden bis zu 10 Dateien gleichzeitig.

5.34 Fix BASE 8. Oktober 2025

Anhang-Versionierung: ältere Versionen bleiben nach Update erhalten

Beim Hochladen einer neuen Version eines Anhangs wurde die vorherige Version unwiderruflich überschrieben. Alte Versionen werden jetzt im Versionsverlauf aufbewahrt und können wiederhergestellt werden.

Version 5.33.x

5.33 Funktion BASE 4. Oktober 2025

QM-Modul: CAPA-Maßnahmen mit Wirksamkeitsprüfung

Das QM-Modul wurde um CAPA-Maßnahmen (Corrective and Preventive Actions) erweitert. Jede Maßnahme durchläuft einen definierten Workflow bis zur Wirksamkeitsprüfung und wird im QM-Dashboard visualisiert.

5.33 Fix BASE 3. Oktober 2025

Reklamationsverwaltung: 8D-Report-Vorlage wird korrekt als PDF generiert

Die automatische Generierung des 8D-Berichts aus einer Reklamation schlug bei mehrzeiligen Texteingaben wegen Zeichenüberlauf fehl. Die Textfelder werden jetzt dynamisch auf mehrere Seiten aufgeteilt.

Version 5.32.x

5.32 Funktion BASE 29. September 2025

Standorthierarchie: Gebäude → Etage → Raum als verschachtelter Baum

Die Standortverwaltung wurde auf eine dreistufige Hierarchie (Gebäude, Etage, Raum) erweitert. Eine Baumansicht ermöglicht die Navigation und zeigt die Gerätezahl je Standort.

5.32 Fix BASE 28. September 2025

Raumplan (SVG): Gerätepositionen werden nach Standortwechsel aktualisiert

Bei einem Standortwechsel eines Geräts wurde die alte Position im SVG-Raumplan nicht entfernt. Das Gerät erschien an beiden Standorten gleichzeitig. Der Lösch- und Neupositionierungsablauf wurde korrigiert.

Version 5.31.x

5.31 Funktion BASE 24. September 2025

Normenverwaltung: Normenverzeichnis mit Revisionshistorie

Ein vollständiges Normenverwaltungsmodul wurde eingeführt. Normen (DIN, ISO, VDI, DAkkS etc.) können mit Revisionen verwaltet werden. Änderungen an Normen-Zuordnungen erzeugen automatisch eine Überprüfungsaufgabe.

5.31 Fix BASE 23. September 2025

Normen-Suche: Sonderzeichen in Normbezeichnungen korrekt indexiert

Normnummern mit Sonderzeichen (Schrägstriche, Bindestriche) wurden im Suchindex nicht vollständig erfasst. Die Indexierungslogik wurde angepasst, sodass alle Normbezeichnungen vollständig durchsuchbar sind.

Version 5.30.x

5.30 Funktion BASE 19. September 2025

Gerätegruppen: Massenbearbeitung und Gruppenkalibrierung

Geräte können jetzt zu benannten Gruppen zusammengefasst werden. Innerhalb einer Gruppe sind Massenbearbeitung (Standortwechsel, Intervall-Update) und eine gemeinsame Kalibrieraufzeichnung möglich.

5.30 Fix BASE 18. September 2025

Gerätestatus-Widget: Anzeige stimmt mit tatsächlichem Status überein

Das Dashboard-Widget zum Gerätestatus zeigte in bestimmten Fällen veraltete Status-Zahlen, weil der Cache nicht korrekt invalidiert wurde. Die Cache-Invalidierung erfolgt jetzt bei jeder Statusänderung.

Version 5.29.x

5.29 Funktion BASE 14. September 2025

Kalenderansicht für Aufgaben und Kalibriertermine

Eine Kalenderansicht (Monat/Woche/Tag) zeigt alle geplanten Kalibriertermine und Aufgaben. Termine können direkt im Kalender verschoben werden; Konflikte werden visuell markiert.

5.29 Fix BASE 13. September 2025

Ressourcenplanung: doppelte Belegung eines Kalibrierplatzes verhindert

Bei paralleler Terminplanung konnten zwei Kalibrieraufträge denselben Kalibrierplatz zur gleichen Zeit belegen. Eine Verfügbarkeitsprüfung verhindert jetzt Doppelbelegungen und schlägt freie Alternativen vor.

Version 5.28.x

5.28 Funktion BASE 9. September 2025

Messmittelkennzeichnung: Barcode-Scanner-Integration für schnelle Identifikation

Geräte können jetzt über einen Barcode-Scanner direkt in der Suchleiste identifiziert werden. Der Scanner-Input wird automatisch als Barcode interpretiert und öffnet das zugehörige Gerät ohne manuelle Eingabe.

5.28 Fix BASE 8. September 2025

Etikettendruck: Seriennummern mit Sonderzeichen werden korrekt kodiert

Seriennummern mit Schrägstrichen oder Leerzeichen erzeugten bei der Barcode-Generierung ungültige Barcodes. Die Kodierungsroutine wurde korrigiert und validiert das Ergebnis jetzt vor dem Druck.

Version 5.27.x

5.27 Funktion BASE 4. September 2025

DMS: Dokumentenversionen mit Vergleichsfunktion

Dokumente im DMS erhalten jetzt eine vollständige Versionshistorie. Zwei Versionen können nebeneinander verglichen werden; Unterschiede in Metadaten werden hervorgehoben.

5.27 Fix BASE 3. September 2025

DMS-Freigabe: zurückgezogene Freigaben werden im Audit-Log protokolliert

Das Zurückziehen einer Dokumentenfreigabe erzeugte keinen Audit-Log-Eintrag. Das Ereignis wird jetzt mit Zeitstempel, Benutzer und Begründung protokolliert.

Version 5.26.x

5.26 Funktion BASE 30. August 2025

Sicherheit: Passwörter mit bcrypt-Hashing und konfigurierbarer Stärkerichtlinie

Passwörter werden jetzt mit bcrypt (Cost-Faktor 12) gespeichert. Im Admin-Panel können Passwortrichtlinien (Mindestlänge, Komplexität, Ablaufzeitraum) konfiguriert werden. Bestehende MD5-Hashes werden beim nächsten Login automatisch migriert.

5.26 Fix BASE 29. August 2025

XSS-Schutz: alle Nutzereingaben werden vor der Ausgabe escapet

Ein Security-Audit identifizierte mehrere Stellen, an denen Nutzereingaben ungefiltert in HTML-Ausgaben eingebettet wurden. Alle betroffenen Views wurden mit CHtml::encode() gesichert.

Version 5.25.x

5.25 Funktion BASE 25. August 2025

SAP-Schnittstelle: bidirektionaler Datenabgleich für Inventardaten

Eine konfigurierbare SAP-Schnittstelle ermöglicht den bidirektionalen Abgleich von Inventardaten (Anlagenummern, Kostenstellen, Standorte) zwischen calServer und SAP-Systemen via RFC-Aufrufe.

5.25 Fix BASE 24. August 2025

FTP-Export: Verbindungsaufbau schlägt nach Timeout nicht mehr stillschweigend fehl

Bei einem FTP-Timeout während des automatischen Exports wurde der Fehler nicht geloggt und der Export galt als erfolgreich. FTP-Verbindungsfehler werden jetzt explizit protokolliert und lösen eine Admin-Benachrichtigung aus.

Version 5.24.x

5.24 Funktion BASE 20. August 2025

Statistik-Modul: Abweichungsanalysen und Trenddiagramme

Ein neues Statistik-Modul zeigt Abweichungsanalysen je Gerät und Messparameter über die Zeit. Trenddiagramme erkennen systematische Drift und warnen, bevor ein Gerät außerhalb der Toleranz liegt.

5.24 Fix BASE 19. August 2025

Jahresstatistik: Kalibrierungen im Dezember erscheinen im korrekten Jahr

Kalibrierungen zwischen dem 28. und 31. Dezember wurden in der Jahresstatistik dem Folgejahr zugeordnet, weil der ISO-Wochenkalkulator Woche 1 des nächsten Jahres verwendete. Die Jahresgruppierung nutzt jetzt das Kalenderjahr.

Version 5.23.x

5.23 Funktion BASE 15. August 2025

Stammdaten: Hersteller- und Kundendatenbank mit Kontaktverwaltung

Ein zentrales Stammdatenmodul verwaltet Hersteller, Lieferanten und Kunden mit vollständigen Kontaktdaten, Ansprechpartnern und verknüpften Geräten. Stammdaten sind im gesamten System als Dropdown-Felder verfügbar.

5.23 Fix BASE 14. August 2025

Doppelte Hersteller-Einträge durch Import-Merge verhindert

Beim Import von Gerätedaten wurden Hersteller mit leicht abweichender Schreibweise als Duplikate angelegt. Der Import-Prozess normiert jetzt Herstellernamen und schlägt bestehende Treffer zur Zusammenführung vor.

Version 5.22.x

5.22 Funktion BASE 10. August 2025

Druckvorlagen: Wasserzeichen und anpassbare Briefköpfe

Druckvorlagen für Berichte und Zertifikate unterstützen jetzt Wasserzeichen (z. B. „Entwurf", „Vertraulich") und vollständig anpassbare Briefköpfe mit Logo, Adresse und Kontaktdaten.

5.22 Fix BASE 9. August 2025

Vorschau-Modus für Druckvorlagen zeigt korrekte Platzhalterwerte

Im Vorschau-Modus des Druckvorlagen-Editors wurden Platzhaltervariablen nicht durch Beispielwerte ersetzt, was die Beurteilung des Layouts erschwerte. Alle definierten Platzhalter werden jetzt mit realistischen Beispielwerten befüllt.

Version 5.21.x

5.21 Funktion BASE 5. August 2025

Audit-Trail: vollständige Änderungshistorie je Datensatz

Jeder Datensatz im System verfügt jetzt über einen vollständigen Audit-Trail. Alle Feldänderungen werden mit Zeitstempel, Benutzer, altem und neuem Wert protokolliert und können je Datensatz eingesehen werden.

5.21 Fix BASE 4. August 2025

Audit-Log-Export: Datumsbereich-Filter funktioniert bei jahresübergreifenden Zeiträumen

Der Export des Audit-Logs mit einem Datumsbereich über einen Jahreswechsel lieferte nur Einträge des Startjahres. Die Filterlogik wurde für jahresübergreifende Zeiträume korrigiert.

Version 5.20.x

5.20 Funktion BASE 1. August 2025

Mobile-optimierte Erfassungsmaske für Kalibrierprotokolle

Kalibrierprotokolle können jetzt auf Tablets und Smartphones erfasst werden. Die Eingabemaske passt sich an die Bildschirmgröße an; Zahleneingaben nutzen automatisch den numerischen Tastaturmodus.

5.20 Fix BASE 31. Juli 2025

Touch-Steuerung: Dropdown-Menüs öffnen auf iOS-Geräten korrekt

Auf iOS-Geräten öffneten Dropdown-Menüs bei Touch nicht zuverlässig, weil das click-Event beim ersten Touch unterdrückt wurde. Die Event-Handler wurden auf touchend umgestellt.

Version 5.19.x

5.19 Funktion BASE 27. Juli 2025

Import/Export: Massendaten-Import über Excel mit Vorlagen-Download

Der Excel-Import für Inventar- und Kalibrierungsdaten wurde um einen Vorlagen-Download erweitert. Die Vorlage enthält alle Felder mit Beschreibung und Pflichtfeld-Markierungen; Importfehler werden zeilenweise als Excel-Report zurückgegeben.

5.19 Fix BASE 26. Juli 2025

CSV-Export: Trennzeichen und Zeichensatz für internationale Kompatibilität konfigurierbar

Beim CSV-Export wurden Semikolons als Trennzeichen und UTF-8 ohne BOM verwendet, was in Excel auf deutschen Windows-Systemen zu Anzeigefehlern führte. Export-Optionen für Trennzeichen, Zeichensatz und BOM wurden ergänzt.

Version 5.18.x

5.18 Funktion BASE 22. Juli 2025

E-Mail-Modul: HTML-Vorlagen mit Platzhaltern und Vorschaufunktion

Das E-Mail-Modul unterstützt jetzt HTML-formatierte Vorlagen mit dynamischen Platzhaltern (z. B. {geraet_name}, {faelligkeitsdatum}). Eine Echtzeit-Vorschau im Editor zeigt das gerenderte Ergebnis.

5.18 Fix BASE 21. Juli 2025

SMTP-Konfiguration: TLS-Handshake schlägt nicht mehr bei selbst signierten Zertifikaten fehl

In internen Umgebungen mit selbst signierten SSL-Zertifikaten schlug der SMTP-Verbindungsaufbau fehl. Eine konfigurierbare Option zum Deaktivieren der Zertifikatsvalidierung für interne Mailserver wurde ergänzt.

Version 5.17.x

5.17 Funktion BASE 17. Juli 2025

Erweiterte Suche: gespeicherte Suchprofile je Benutzer

Die erweiterte Suche ermöglicht das Speichern von Suchprofilen. Benutzer können häufig genutzte Filterkombinationen unter einem Namen abspeichern und per Klick erneut anwenden.

5.17 Fix BASE 16. Juli 2025

Volltextsuche: Ergebnisse aus archivierten Datensätzen werden gefiltert

Die Volltextsuche lieferte standardmäßig auch Treffer aus archivierten oder gelöschten Datensätzen. Archivierte Datensätze werden jetzt aus dem Standard-Suchindex ausgeschlossen und nur bei expliziter Archiv-Suche angezeigt.

Version 5.16.x

5.16 Funktion BASE 12. Juli 2025

Dashboard: konfigurierbare Widgets mit Fälligkeits-Ampel und Kennzahlen

Das Dashboard wurde vollständig überarbeitet. Benutzer können aus einem Widget-Katalog wählen und ihr Dashboard individuell gestalten. Neue Widgets umfassen die Fälligkeits-Ampel, Kalibrierstatistiken und eine Aufgabenliste.

5.16 Fix BASE 11. Juli 2025

Dashboard: Widget-Ladezeiten bei großem Datenbestand optimiert

Einzelne Widgets blockierten das gesamte Dashboard-Rendering, wenn ihre Datenbankabfragen lange liefen. Widgets laden jetzt asynchron und zeigen einen Lade-Indikator bis die Daten verfügbar sind.

Version 5.15.x

5.15 Funktion BASE 7. Juli 2025

Zertifikatsverwaltung: Gültigkeitsverfolgung und automatische Erinnerung

Kalibrierzertifikate erhalten jetzt ein Ablaufdatum. Automatische Erinnerungen werden 30, 14 und 7 Tage vor Ablauf versendet. Abgelaufene Zertifikate werden in der Geräteansicht farbig markiert.

5.15 Fix BASE 6. Juli 2025

Zertifikat-Upload: doppelte Uploads werden erkannt und zusammengeführt

Beim versehentlichen mehrfachen Upload derselben Zertifikat-Datei entstanden Duplikate. Eine Hash-basierte Duplikaterkennung verhindert jetzt doppelte Zertifikate und bietet die Option zur Zusammenführung an.

Version 5.14.x

5.14 Funktion BASE 2. Juli 2025

REST-API v1: Inventar- und Kalibrierungsdaten über JSON-API abrufbar

Die erste öffentliche REST-API für calServer wurde veröffentlicht. Inventardaten und Kalibrierungshistorie sind über authentifizierte Endpunkte als JSON abrufbar. API-Schlüssel werden im Admin-Panel verwaltet.

5.14 Fix BASE 1. Juli 2025

API: Paginierungs-Header werden korrekt zurückgegeben

API-Responses lieferten keine X-Pagination-*-Header, was Clients zwang, alle Daten auf einmal abzurufen. Standard-Paginierungs-Header (X-Pagination-Total-Count, X-Pagination-Page-Count) wurden ergänzt.

Version 5.13.x

5.13 Funktion BASE 27. Juni 2025

Mandantenfähigkeit: bereichsspezifische Daten und Rechtevergabe

calServer unterstützt jetzt mehrere unabhängige Organisationsbereiche (Mandanten). Benutzer sind genau einem Bereich zugeordnet; bereichsübergreifende Suche und Auswertung ist nur für Administratoren mit entsprechender Berechtigung möglich.

5.13 Fix BASE 26. Juni 2025

Mandantenwechsel: Sitzungsdaten des vorherigen Bereichs werden vollständig bereinigt

Nach einem Mandantenwechsel wurden Filter- und Sortierstatus aus dem vorherigen Bereich weitergeführt, was zu falschen Suchergebnissen führte. Alle bereichsspezifischen Session-Daten werden beim Wechsel geleert.

Version 5.12.x

5.12 Funktion BASE 22. Juni 2025

Inventar: QR-Code-Generierung und Standort-Tracking je Gerät

Jedem Gerät wird automatisch ein eindeutiger QR-Code zugewiesen. Der Code kann ausgedruckt und am Gerät befestigt werden; ein Scan öffnet direkt die Gerätedetailseite.

5.12 Fix BASE 21. Juni 2025

Inventarnummer: automatische Vergabe vermeidet Lücken bei gelöschten Datensätzen

Die automatische Inventarnummer-Vergabe erzeugte gelegentlich Lücken, wenn ein Datensatz zwischen der Nummernreservierung und dem Speichern gelöscht wurde. Die Vergabe nutzt jetzt eine atomare Datenbanksequenz.

Version 5.11.x

5.11 Funktion BASE 17. Juni 2025

Mehrsprachigkeit: Deutsch und Englisch vollständig umschaltbar

Die Benutzeroberfläche von calServer ist jetzt vollständig auf Deutsch und Englisch verfügbar. Benutzer wählen die Sprache in den Profileinstellungen; alle Labels, Meldungen und Berichte werden in der gewählten Sprache angezeigt.

5.11 Fix BASE 16. Juni 2025

Datumslokalisierung: Datumsformat richtet sich nach der gewählten Sprache

In der englischen Oberfläche wurden Datumswerte weiterhin im deutschen Format (DD.MM.YYYY) angezeigt. Datumsfelder und -ausgaben folgen jetzt konsequent dem Lokalisierungsformat der eingestellten Sprache.

Version 5.10.x

5.10 Funktion BASE 12. Juni 2025

Jahreskalibierplanung mit Ressourcenzuordnung

Ein Planungsmodul für die Jahres-Kalibrierplanung wurde eingeführt. Kalibrierpläne können je Bereich erstellt, mit Ressourcen (Kalibrierplätzen, Technikern) verknüpft und als Druckliste oder Kalenderexport ausgegeben werden.

5.10 Fix BASE 11. Juni 2025

Wiederkehrende Kalibrierungen: Monatsgrenzen werden korrekt berechnet

Bei monatlich wiederkehrenden Kalibrierungen wurde der 31. eines Monats im nächsten Monat (30 Tage) auf den letzten Tag des Monats gesetzt, was zu einer unerwarteten Datumsverlagerung führte. Die Terminberechnung folgt jetzt dem ISO-Kalender.

Version 5.9.x

5.9 Funktion BASE 7. Juni 2025

Integration: LIMS-Schnittstelle für Laborinformationssysteme

Eine konfigurierbare LIMS-Schnittstelle ermöglicht den Datenaustausch mit gängigen Laborinformationssystemen. Kalibrierungsergebnisse werden automatisch an das LIMS übertragen; Prüfaufträge können bidirektional abgeglichen werden.

5.9 Fix BASE 6. Juni 2025

LIMS-Export: Zeichensatz-Konvertierung für Sonderzeichen in Beschreibungsfeldern

Beschreibungsfelder mit Sonderzeichen (Umlaute, Sonderzeichen) wurden beim LIMS-Export nicht korrekt kodiert und erschienen als Fragezeichen im Zielsystem. Die Konvertierung erfolgt jetzt explizit nach UTF-8.

Version 5.8.x

5.8 Funktion BASE 2. Juni 2025

Performance: Datenbankindizes für häufig abgefragte Spalten

Fehlende Datenbankindizes auf Spalten wie next_calibration_date, status und device_id wurden ergänzt. Listenanfragen in großen Datenbeständen (> 50.000 Geräte) wurden dadurch um bis zu 70 % beschleunigt.

5.8 Fix BASE 1. Juni 2025

N+1-Query-Problem in Gerätediagramm behoben

Die Gerätedetailansicht führte für jede verknüpfte Kalibrierung eine separate Datenbankabfrage aus. Das Eager-Loading wurde aktiviert; die Anzahl der Abfragen sank von n+1 auf 2.

Version 5.7.x

5.7 Funktion BASE 27. Mai 2025

Aufgabenverwaltung: Aufgaben mit Frist, Priorität und Zuweisung

Ein vollständiges Aufgabenmodul wurde eingeführt. Aufgaben können erstellt, mit Fristen und Prioritäten versehen und Benutzern oder Gruppen zugewiesen werden. Automatische Erinnerungen werden 1 Tag vor Fälligkeit versendet.

5.7 Fix BASE 26. Mai 2025

Aufgaben-E-Mail: Erinnerung wird nur einmal gesendet, nicht bei jedem Cron-Lauf

Aufgabenerinnerungen wurden bei jedem Cron-Durchlauf erneut gesendet, solange die Aufgabe noch offen und die Frist abgelaufen war. Gesendete Erinnerungen werden jetzt als „versendet" markiert und nicht wiederholt.

Version 5.6.x

5.6 Funktion BASE 22. Mai 2025

DMS: Dokumentenmanagementsystem mit elFinder-Integration

Ein vollständiges Dokumentenmanagementsystem wurde integriert. Dokumente können in einer Ordnerstruktur abgelegt, kategorisiert und mit Geräten sowie Kalibrierungen verknüpft werden. Der elFinder-Dateimanager bietet eine vertraute Oberfläche.

5.6 Fix BASE 21. Mai 2025

Dokumentensuche: Volltextindexierung für PDF-Inhalte aktiviert

PDF-Dokumente wurden bisher nur nach Dateiname und Metadaten durchsucht. Apache Tika extrahiert jetzt den Textinhalt aus PDFs; dieser ist vollständig durchsuchbar.

Version 5.5.x

5.5 Funktion BASE 17. Mai 2025

PDF-Bericht-Generierung: JasperReports mit anpassbaren Vorlagen

Kalibrierberichte und Prüfzertifikate werden jetzt über JasperReports erzeugt. Vorlagen können im Admin-Panel hochgeladen und mit Unternehmens-Branding versehen werden. Stapeldruck für mehrere Geräte ist möglich.

5.5 Fix BASE 16. Mai 2025

PDF-Generierung: Umlaute in Geräte- und Benutzerfeldern korrekt dargestellt

Beim PDF-Export wurden Umlaute (ä, ö, ü, ß) als Leerzeichen oder Fragezeichen dargestellt. Die JasperReports-Vorlage verwendet jetzt eine eingebettete Unicode-Schrift für korrekte Darstellung.

Version 5.4.x

5.4 Funktion BASE 12. Mai 2025

Berechtigungssystem: rollenbasiertes Zugriffskontrollsystem (RBAC)

Das Berechtigungssystem wurde auf Yii RBAC umgestellt. Rollen (Techniker, Auditor, Administrator etc.) werden im Admin-Panel konfiguriert. Zugriffsrechte können feingranular je Modul und Aktion vergeben werden.

5.4 Fix BASE 11. Mai 2025

Berechtigungscheck: gesperrte Benutzer können sich nicht mehr anmelden

Deaktivierte Benutzer konnten sich mit einem gültigen Session-Cookie weiterhin anmelden, ohne dass der gesperrte Status beim Request überprüft wurde. Der Berechtigungscheck erfolgt jetzt bei jedem Seitenaufruf.

Version 5.3.x

5.3 Funktion BASE 7. Mai 2025

Navigation: responsive Hauptnavigation mit aufklappbaren Menügruppen

Die Hauptnavigation wurde auf ein responsives, zweistufiges Menü umgestellt. Menügruppen können auf- und zugeklappt werden; der aktive Menüpunkt wird hervorgehoben. Auf mobilen Geräten klappt das Menü zu einer Hamburger-Navigation.

5.3 Fix BASE 6. Mai 2025

Tabellensortierung: numerische Spalten werden numerisch sortiert

Spalten mit numerischen Werten (Inventarnummern, Messwerte) wurden alphabetisch statt numerisch sortiert, was zu falscher Reihenfolge führte (z. B. 10 vor 9). Die Sortierung erkennt jetzt den Spaltentyp und sortiert entsprechend.

Version 5.2.x

5.2 Funktion BASE 2. Mai 2025

Berichtswesen: Fälligkeitslisten und Kalibrierübersichten als PDF und Excel

Standardberichte für fällige Kalibrierungen, abgelaufene Zertifikate und abgeschlossene Kalibrierungen sind jetzt als PDF- und Excel-Export verfügbar. Filter nach Bereich, Standort und Zeitraum sind integriert.

5.2 Fix BASE 1. Mai 2025

Berichts-Zeitraum-Filter: Berichte mit Zeitraum „letzte 12 Monate" korrekt berechnet

Der Zeitraum „letzte 12 Monate" verwendete das aktuelle Datum minus 365 Tage, was im Schaltjahr zu falschem Ergebnis führte. Der Filter verwendet jetzt date('Y-m-d', strtotime('-12 months')).

Version 5.1.x

5.1 Funktion BASE 27. April 2025

Kalibrierworkflow: Status-Übergänge mit Freigabe-Prozess

Der Kalibrierworkflow wurde um klar definierte Status-Übergänge erweitert: Geplant → In Bearbeitung → Zur Freigabe → Freigegeben. Freigaben können je nach Konfiguration durch einen zweiten Benutzer erteilt werden.

5.1 Funktion BASE 26. April 2025

Fälligkeitsberechnung: automatische Berechnung des nächsten Kalibriertermins

Der nächste Kalibriertermins wird automatisch aus dem letzten Kalibrierungsdatum und dem konfigurierten Intervall berechnet. Abweichungen vom Plantermin werden im Verlauf protokolliert.

5.1 Fix BASE 25. April 2025

Kalibrierhistorie: Einträge werden chronologisch korrekt sortiert

Kalibrierhistorie-Einträge wurden nach der internen Datensatz-ID sortiert statt nach dem Kalibrierungsdatum, was bei rückwirkenden Einträgen zu falscher Reihenfolge führte. Die Sortierung erfolgt jetzt nach Kalibrierungsdatum absteigend.

Version 5.0.x

5.0.0 Funktion BASE 1. März 2023

Initialer Release: calServer 5.0 auf Basis von Yii 1.1

calServer 5.0 ist der Startpunkt der V5-Entwicklungslinie, vollständig neu aufgebaut auf Yii 1.1. Das System umfasst Inventarverwaltung, Kalibrierungsworkflow, Benutzer- und Berechtigungssystem sowie grundlegende Berichtsfunktionen. V5 ersetzt die V4-Codebasis vollständig.

5.0.1 Funktion BASE 15. März 2023

Datenmigrations-Tool: Import aus calServer V4

Ein Migrations-Skript überträgt Inventardaten, Kalibrierungshistorie und Benutzerkonten aus dem V4-Datenbankschema in das neue V5-Schema. Konfigurierbare Feld-Mappings erlauben die Anpassung an individuelle V4-Anpassungen.

5.0.2 Fix BASE 22. März 2023

Session-Handling: gleichzeitige Logins mehrerer Benutzer nicht mehr konfliktbehaftet

Gleichzeitige Logins verschiedener Benutzer auf demselben Server führten zu Session-Konflikten, weil Session-Daten im Dateisystem ohne Locking geschrieben wurden. Sessions werden jetzt in der Datenbank gespeichert.

5.0.3 Fix BASE 29. März 2023

Datenbankverbindung: automatisches Reconnect bei Verbindungsabbruch

Nach einem Datenbankverbindungsabbruch (z. B. durch Firewall-Timeout) wurde kein automatisches Reconnect versucht, was zu Fehlermeldungen für laufende Sitzungen führte. Yii ist jetzt so konfiguriert, dass es bei verlorenem Verbindungsaufbau automatisch neu verbindet.