ProjectForge 9
Neu in ProjectForge 9: ProjectForge 9.0.0 ↓
ProjectForge 9.2.8 veröffentlicht
2026-11-09, Tag 9.2.8-RELEASE Nur Quellcode
-
Chat: Linkvorschauen, anklickbare URLs in allen Rich-Texten
-
CVE-Radar: Findings je Knoten und Bibliothek, weniger Fehltreffer durch Advisories von Debian/Ubuntu, Anbindung an Dependency-Track, eigener Backup-Dump
-
Neues Logo: Weboberfläche, Webseite, App-Icon
-
App: Changelog, zuletzt genutzter Tab, Menü für breite Bildschirme
-
Sicherheit: kürzere Lebensdauer des CSRF-Tokens, Bibliotheksupdates (freemarker, jsoup)
-
Docker: Image auf Ubuntu 24.04, Compose-Beispiel mit PostgreSQL 17
Überblick
-
Chat und Rich-Texte: Ein Link in einer Nachricht zeigt eine Vorschau der verlinkten Seite (vom Server abgerufen, entfernbar, von Administratoren abschaltbar); URLs in Chatnachrichten und allen Rich-Texten sind anklickbar, ein geänderter Link führt zur geänderten URL; beim Öffnen einer Unterhaltung steht der Cursor im Nachrichtenfeld (nicht auf Touch-Geräten).
-
CVE-Radar: Der Dialog eines Bereichs, Systems, einer Instanz oder Komponente listet ihre offenen Findings mit Kennzahlen nach Schweregrad, auch je Bibliothek mit der Aktualisierung, die ihre CVEs behebt, filterbar nach der hochgeladenen Datei, in der sie gefunden wurden, und lässt sie von Hand erneut prüfen; Pakete von Debian und Ubuntu werden gegen die Advisories ihres Releases und über ihr Quellpaket abgeglichen (zurückportierte Fixes erscheinen nicht mehr, auch bei Listen von dpkg-query mit /etc/os-release), CPE-Einträge einer anderen Plattform oder per Name eines anderen Herstellers treffen keine Bibliothek mehr, Hinweise nur für andere Betriebssysteme keine Linux-Komponente; das Hochladen der Bibliotheken läuft im Hintergrund; die Antworten einer Team-Prüfung zeigen ihre Anzahlen und sind filterbar; optionale Anbindung an Dependency-Track (zunächst wird die Verbindung geprüft); die importierten Schwachstellendaten kommen in einen eigenen Dump (ein bestehendes Backup-Skript ist anzupassen, siehe Adminguide).
-
Neues ProjectForge-Logo: in der Weboberfläche (helles und dunkles Theme), auf der Webseite, als Favicon und Homescreen-Icon, auf dem Wallet-Pass der Visitenkarte und als App-Icon.
-
Changelog: Inhaltsverzeichnis der Hauptversionen und ihrer Releases neben dem Text, wie auf der Webseite (auf schmalen Bildschirmen und in der App hinter einem Button); der sichtbare Eintrag ist hervorgehoben, die Spalte lässt sich ausblenden.
-
Listen: Die leeren Filter Business Unit, Kunde und Projekt erscheinen in den Listen der Aufträge, Rechnungen, Projekte, Kostenträger und Zeitberichte sowie in der Auftragsstatistik als eine Pille.
-
Mobile App (in Vorbereitung): Der Changelog öffnet sich über das „Mehr“-Menü, die App startet mit dem zuletzt genutzten Tab, das Menü der Seiten hat auf breiten Bildschirmen mehrere Spalten und sucht schon beim Tippen, die Navigation im Querformat lässt sich rechts platzieren, Serverwechsel und Einstellungen schieben sich über die Tabs hoch, der Tagesfortschritt der Zeitberichte richtet sich nach der eigenen Wochenarbeitszeit.
-
Docker: Das Image basiert auf Ubuntu 24.04 und spielt beim Bauen die Sicherheitsupdates des Basis-Images ein; das Compose-Beispiel verwendet PostgreSQL 17 statt 13 (eine bestehende Datenbank muss gesichert und wieder eingespielt werden, siehe docker/README.adoc).
-
Sicherheit: Das CSRF-Token einer Session wird spätestens nach einer Stunde erneuert, Aufgabenbaum und Auswahl der Datentransfer-Box ändern sich nur per POST, Anfragen mit fremdem Origin oder Referer werden abgelehnt; Sicherheitsupdates von freemarker (2.3.35) und jsoup (1.23.2).
Alle Änderungen
-
App Der Changelog öffnet sich über das „Mehr“-Menü (der Eintrag mit der Version).
-
App Auf breiten Bildschirmen (Querformat, iPad) zeigt das Menü der Seiten seine Einträge in mehreren Spalten.
-
App In den Einstellungen lässt sich die Navigation im Querformat (die Spalte der Symbole) statt links auch rechts platzieren, z. B. für den rechten Daumen.
-
Chat: Ein Link in einer Nachricht zeigt eine Vorschau der verlinkten Seite (Titel, Beschreibung, Bild), wie in anderen Chats, schon beim Schreiben. Der Server ruft sie ab, sodass der Browser nichts von der verlinkten Seite lädt; die Vorschau lässt sich vor oder nach dem Senden entfernen, Administratoren können die Vorschauen abschalten (projectforge.chat.linkPreview.enabled=false).
-
CVE-Radar: optionale Anbindung an Dependency-Track als zweite Erkennung der Befunde parallel zum eigenen Abgleich; zunächst wird die Verbindung geprüft und auf dem System-Dashboard angezeigt.
-
CVE-Radar: Der Dialog eines Bereichs, Systems, einer Instanz oder Komponente hat einen Reiter „Findings“ mit ihren offenen Findings (Kennzahlen der CVEs nach Schweregrad, auch als Filter, Anzahlen, Filter nach Sicherheit, ein Klick öffnet die CVE); ein Klick auf die Anzahlen im Baum öffnet ihn direkt, beim Darüberfahren zeigen sie die Kennzahlen, und der Export der Findings bleibt in jeder Zeile mit Findings sichtbar.
-
CVE-Radar: Die Antworten der Mitglieder einer Team-Prüfung zeigen ihre Anzahlen (beantwortet, noch nicht beantwortet, betroffen, je Antwort) und lassen sich über angepinnte Pillen nach der Antwort filtern.
-
Sicherheit: Das CSRF-Token einer Session wird spätestens nach einer Stunde erneuert; Aufgabenbaum und Auswahl einer persönlichen Datentransfer-Box ändern sich nur noch per POST; bei Browsern ohne Fetch-Metadaten werden Anfragen abgelehnt, deren Origin oder Referer einen fremden Host nennt.
-
Die Listen der Aufträge, Rechnungen, Projekte, Kostenträger und Zeitberichte und die Auftragsstatistik zeigen die leeren Filter Business Unit, Kunde und Projekt in einer Pille; ein Filter bekommt seine eigene Pille, sobald darin etwas ausgewählt ist.
-
Chatnachrichten und alle Rich-Texte (Beschreibungen, Notizen, Hinweise) zeigen ihre URLs (mit http(s):// oder www.) als anklickbare Links, auch in älteren Texten und wenn die URL das letzte Wort ist.
-
Changelog: Inhaltsverzeichnis der Hauptversionen und ihrer Releases neben dem Text (auf schmalen Bildschirmen und in der App hinter einem Button), wie auf der Webseite; der sichtbare Eintrag ist hervorgehoben, die Spalte lässt sich ausblenden.
-
Chat: Beim Öffnen einer Unterhaltung steht der Cursor im Nachrichtenfeld (nicht auf Touch-Geräten, wo die Tastatur die Nachrichten verdecken würde).
-
CVE-Radar
-
Pakete von Debian und Ubuntu (SBOMs von Containern und Servern) werden gegen die Advisories ihres Releases von OSV.dev abgeglichen: Von der Distribution zurückportierte Fixes erscheinen nicht mehr als möglicherweise betroffen, offene CVEs des Releases als betroffen, CVEs ohne Auswirkung (unimportant, negligible) gar nicht. Neue OSV-Ökosysteme Debian und Ubuntu, standardmäßig an.
-
Binärpakete einer Distribution (libssl3) werden über ihr Quellpaket (openssl) abgeglichen, wie es die Advisories nennen (Qualifier upstream einer SBOM). Eine Liste von dpkg-query mit den Zeilen von /etc/os-release und den Quellpaketen wird wie eine SBOM abgeglichen; der Befehl im Benutzerhandbuch schreibt sie.
-
Weniger Fehltreffer über den Namen einer CPE: Ein Eintrag für eine Laufzeitumgebung (node.js, Rust, Python, …) trifft nur Bibliotheken dieses Ökosystems, und bei Bibliotheken, die OSV kennt, muss der Vendor zum Paket passen (Adobe Connect ist nicht mehr das npm-Paket connect).
-
-
CVE-Radar
-
Findings je Bibliothek: Der Reiter „Findings“ schaltet auf eine Zeile je Bibliothek um, mit der Anzahl ihrer CVEs, dem höchsten Schweregrad und der Aktualisierung, die sie auf einmal behebt; der Export hat dieselbe Zusammenfassung.
-
Die Findings eines Knotens lassen sich von Hand erneut prüfen („Erneut prüfen“ im Dialog seiner Findings); die Meldung nennt, wie viele neu, geändert oder entfernt sind.
-
Jede für eine Komponente hochgeladene Bibliothek zeigt, wo sie gefunden wurde: die Datei des Uploads und in der SBOM eines Images die Stelle darin.
-
Die Findings eines Knotens lassen sich nach der hochgeladenen Datei filtern, in der sie gefunden wurden; die Kennzahlen und Anzahlen zeigen dann nur diese Datei.
-
Hinweise, die nur andere Betriebssysteme betreffen (z. B. Windows), treffen keine Komponente mehr, die unter Linux läuft.
-
Das Hochladen der Bibliotheken läuft im Hintergrund mit Fortschrittsbalken, sodass ein großer Upload nicht mehr in eine Zeitüberschreitung läuft.
-
-
App Die App startet mit dem zuletzt auf dem Gerät genutzten Tab statt immer mit den Visitenkarten, und die Seiten (Weltkugel) mit der zuletzt gezeigten Seite.
-
App Serverwechsel und Einstellungen des „Mehr“-Menüs schieben sich wie die Benachrichtigungen über die Tabs hoch, die Tab-Leiste bleibt darunter sichtbar (Server hinzufügen und das Log öffnen sich darin, mit einem Pfeil zurück); das „Mehr“-Menü wird so hoch, wie seine Einträge es brauchen.
-
App Neues App-Icon mit dem neuen ProjectForge-Logo.
-
App Der Fortschritt eines Tages bei den Zeitberichten richtet sich nach einem Fünftel der an diesem Tag gültigen eigenen Wochenarbeitszeit statt nach 8 Stunden.
-
CVE-Radar: Die importierten Daten der Schwachstellen liegen in einer eigenen Tabelle; das Backup-Skript schreibt sie mit den OSV-Advisories und dem Stand der Importe in einen eigenen Dump (projectforge_cveradar_…), aus den Quellen wiederherstellbar. Fälle, Team-Checks, Antworten und Befunde bleiben im Haupt-Dump, der auch ohne ihn vollständig ist. Ein bestehendes Backup-Skript ist anzupassen (Adminguide, „Backup-Skript“).
-
Neues ProjectForge-Logo: in der Weboberfläche (helles und dunkles Theme), auf der Webseite, als Favicon und Icon von Browser und Homescreen sowie auf dem Wallet-Pass der Visitenkarte.
-
Docker: Das Image basiert auf Ubuntu 24.04 (Eclipse Temurin 21 JRE, bisher Ubuntu 22.04) und spielt beim Bauen die Sicherheitsupdates des Basis-Images ein; das Compose-Beispiel verwendet PostgreSQL 17 statt des nicht mehr unterstützten 13 (eine bestehende Datenbank muss gesichert und wieder eingespielt werden, siehe docker/README.adoc).
-
App Das + bei den Adressen öffnet das Formular einer neuen Adresse statt einer Fehlerseite (nicht gefunden).
-
App Die Suche im Menü der Seiten zeigt ihre Treffer schon beim Tippen über der Tastatur (nicht erst nach der Suchtaste).
-
Chatnachrichten und Rich-Texte: Ein Link, dessen URL nachträglich geändert wird, führt zur geänderten URL statt zur zuerst getippten.
-
Sicherheitsupdates der Bibliotheken freemarker (2.3.35) und jsoup (1.23.2).
ProjectForge 9.2.7 veröffentlicht
2026-11-08, Tag 9.2.7-RELEASE Nur Quellcode
-
CVE-Radar: EUVD als zusätzliche Quelle, Team-Prüfungen je Person beantwortet
-
App: Pushes aller Server, neues Menü des ProjectForge-Tabs, Browserfunktionen in Web-Tabs
-
Bearbeitet von: neue Spalte in vielen Listen
-
E-Rechnung: Selbstprüfung der erzeugten Datei, getrennte Kontakt-E-Mails
-
Visitenkarten: Foto über öffentliche URL mit zufälligem Token verlinkt
Überblick
-
CVE-Radar: Import der European Union Vulnerability Database (EUVD, standardmäßig aus) mit EUVD-Id, EPSS und Ausnutzungstag; die Quelle (NVD, OSV, EUVD) wird als Badge angezeigt und ist filterbar; eine Team-Prüfung kann jedes Mitglied einer Gruppe fragen und bleibt offen, bis alle aktiven Mitglieder geantwortet haben; neuer Benachrichtigungsregel-Typ "Unbeantwortete Team-Prüfungen eines Falls"; die Statistik kann 1, 2, 5 oder 10 Jahre zurückblicken.
-
Mobile App (in Vorbereitung): Pushes aller angemeldeten Server, der ProjectForge-Tab öffnet mit einem Menü (Favoriten, zuletzt geöffnete Seiten, Hauptmenü, Benutzermenü mit Darstellung, Suche), Web-Tabs haben ein Browsermenü, die Systemmeldung wird angezeigt, Kontakte können dem Gerät hinzugefügt oder als vCard geteilt werden, die Benachrichtigungen und das "Mehr"-Menü schieben sich über die Tab-Leiste, der Wochenstreifen der Zeitbuchungen rastet auf ganze Wochen ein.
-
Listen: neue Spalte "Bearbeitet von" in den Listen der Adress-Kampagnenwerte, Rechnungen, Aufträge, Urlaubskorrekturen, Liquiditätseinträge, Post, Verträge, des Besucherbuchs, der Benachrichtigungsregeln, Kunden und Projekte; Adress-Kampagnenwerte lassen sich nach Bearbeiter filtern.
-
E-Rechnung: die erzeugte XRechnung/ZUGFeRD-Datei wird vom E-Rechnungs-Prüfer geprüft und das Ergebnis angezeigt; die Empfänger-E-Mail (BT-49) und die Kontakt-E-Mail (BT-58) sind getrennte Felder, die Kontakt-E-Mail des Verkäufers (BT-43) ist vorbelegt und änderbar.
-
Digitale Visitenkarten: das Foto wird über eine öffentliche URL mit zufälligem Token verlinkt, auch ohne Gateway (Gateway zusammen mit dem Server aktualisieren; Foto-Links früherer QR-Codes funktionieren nicht mehr); die Karte listet ihren Inhalt unter dem QR-Code auf, der schärfer dargestellt wird.
-
Chat und Benachrichtigungen: die Suche listet alle passenden Personen mit Schaltflächen für eine Direktnachricht oder einen verschlüsselten Chat, langes Drücken auf eine Reaktion zeigt, wer reagiert hat, Chat-Benachrichtigungen zeigen den Nachrichtenanfang, Benachrichtigungs-Mails enthalten einen Link; die Regeltypen der Benachrichtigungsregeln kommen aus den aktiven Modulen und Plugins.
-
Korrekturen: Kalendereinträge lassen sich am Startzeitpunkt aufziehen, eine aus einer Pause geöffnete Zeitbuchung behält ihr Ende, Plugin-Menüeinträge sind in Benachrichtigungsregeln wählbar, die Badges der App folgen gelesenen Chats und erledigten Benachrichtigungen sofort.
Alle Änderungen
-
CVE-Radar: Import der Schwachstellen der European Union Vulnerability Database (EUVD) als Ergänzung zur NVD. Er ergänzt EUVD-ID, EPSS und den Tag der Ausnutzung und bringt Schwachstellen, die die NVD noch nicht hat, auch solche ohne CVE-ID. Die EUVD nennt nur Produkte, daher treffen diese als möglich. Standardmäßig aus.
-
CVE-Radar: Liste und Akte einer Schwachstelle zeigen als Badges, woher die Daten stammen (NVD, OSV, EUVD), und die Liste hat einen angepinnten Filter zur Auswahl der Quelle.
-
App Die Systemmeldung der Administration (z. B. Wartungsarbeiten) wird wie in der Webversion über den Seiten angezeigt.
-
Adresskampagnen-Werte: Neuer Filter "Bearbeitet von", der die Einträge zeigt, die eine gewählte Person angelegt oder geändert hat.
-
App Die Web-Tabs haben ein Browser-Menü mit Zurück, Vorwärts, Neu laden, Suchen auf der Seite, Link teilen, Im Browser öffnen und Neustart; Runterziehen zum Neuladen funktioniert jetzt auch auf den Seiten mit Menü, und eine fehlende Verbindung zeigt einen Fehler mit erneutem Versuch statt einer leeren Seite.
-
Neue Spalte "Bearbeitet von" mit einer Pille für alle, die einen Eintrag angelegt oder geändert haben, in den Listen der Adresskampagnen-Werte, Ausgangs- und Eingangsrechnungen, Aufträge, Urlaubskorrekturen, Liquiditätseinträge, Post-Ein- und -Ausgänge, Verträge, des Besuchsbuchs, der Benachrichtigungsregeln, Kunden und Projekte.
-
CVE-Radar, Benachrichtigungsregeln: neuer Regeltyp „Unbeantwortete Teamabfragen eines Falls“. Die Regel nennt einen Fall und erinnert die Mitglieder, die eine seiner Teamabfragen, die jedes Mitglied beantwortet, noch nicht beantwortet haben, höchstens einmal am Tag, nach Zeitplan oder von Hand ausgelöst. Die Erinnerung erledigt sich, sobald sie geantwortet haben.
-
App Alle Server, bei denen die App angemeldet ist, schicken Push-Nachrichten, nicht nur der angezeigte. Die Push-Nachricht nennt ihren Server; ein Tipp auf eine eines anderen Servers bietet den Wechsel dorthin an und öffnet sie. Deren offene Benachrichtigungen erscheinen am Menü, in der Serverliste und in der Benachrichtigungszentrale, das App-Icon zählt alle. Ältere Server schicken wie bisher nur, solange sie angezeigt werden.
-
App Ein Kontakt des Adressbuchs kann in die eigenen Kontakte des Geräts übernommen oder als vCard geteilt werden (Nachrichten, Mail, Messenger), auch ohne Verbindung zum Server.
-
App Der ProjectForge-Tab (Weltkugel) öffnet sich mit einem Menü, das auf dem Smartphone gut erreichbar ist: Tabs für Favoriten, zuletzt geöffnete Seiten, Hauptmenü mit aufklappbaren Bereichen und Benutzermenü mit dem Erscheinungsbild (hell, dunkel, System; der zuletzt gewählte Tab öffnet sich wieder) und eine Suche über alle Einträge (oder in allen Daten). Ein erneuter Tipp auf die Weltkugel schließt das Menü und zeigt die Seite wie zuvor; noch ein Tipp öffnet das Menü wieder.
-
CVE-Radar, Tab "Statistik": optional Rückblick auf 1, 2, 5 oder 10 Jahre.
-
CVE-Radar, Mein CVE-Radar: „Erledigt“ und „Nicht betroffen“ fragen vor dem Speichern nach und erklären, dass sie nur für dich selbst gelten und den Fall nicht schließen. Die Fallkarte zeigt außerdem die Prüfungen der eigenen Gruppen mit ihrem Antworten-Button. Fragt eine solche Prüfung jedes Mitglied, gilt ihre Antwort zugleich als deine Antwort zum Fall, es gibt also nur eine Antwort pro Person. In der Tabelle dieser Prüfungen bleiben die kennzeichnenden Spalten und die Aktionen angepinnt.
-
Chat: Auf Touch-Geräten und in der App zeigt ein langer Druck auf eine Reaktion, wer reagiert hat.
-
Chat: Die Suche listet alle passenden Personen, jeweils mit Buttons für eine Direktnachricht oder einen verschlüsselten Chat.
-
E-Rechnung: Die E-Mail-Adresse für den Rechnungseingang des Kunden (BT-49) und die des Ansprechpartners (BT-58) sind jetzt getrennte Felder an Rechnung und Konto. Die E-Mail-Adresse des Ansprechpartners des Verkäufers (BT-43) wird aus der Konfiguration vorbelegt und ist an der Rechnung änderbar.
-
App Unter dem QR-Code einer Visitenkarte zeigt eine kleine Liste alle Felder der Karte, auch das Foto, auch ohne Verbindung zum Server.
-
Digitale Visitenkarte: Unter dem QR-Code zeigt eine kleine Liste alle Felder der Karte, auch das Foto.
-
Der QR-Code einer Visitenkarte wird in höherer Auflösung erzeugt und bleibt so auch groß angezeigt scharf (z. B. in der App).
-
Digitale Visitenkarten: Das Foto wird über eine öffentliche URL mit zufälligem Token verlinkt (ohne Anmeldung, nicht erratbar), auch ohne Gateway; die URL bleibt beim Ersetzen oder Löschen des Bildes gleich und lässt sich mit "Foto-Link erneuern" an der Karte widerrufen. Die Basis-URL lässt sich mit
projectforge.businessCard.photoBaseUrlfestlegen. Das Gateway zusammen mit dem Server aktualisieren; Foto-Links früherer QR-Codes funktionieren nicht mehr. -
Beim Erzeugen einer E-Rechnung (XRechnung, ZUGFeRD) prüft der E-Rechnungs-Checker jetzt die erzeugte Datei und zeigt das Ergebnis (gültig, Warnungen oder Fehler) in einem Dialog.
-
Benachrichtigungsregeln: Die Regeltypen kommen von den Modulen und Plugins, die sie bereitstellen. Die Regeltypen eines deaktivierten Plugins (z. B. des CVE-Radars) werden nicht mehr angeboten, und seine Regeln warten, bis das Plugin wieder aktiv ist.
-
App Die Wochenleiste der Zeitberichte folgt beim Wischen dem Finger und rastet auf eine ganze Woche ein; die Woche beginnt mit dem in "Mein Zugang" eingestellten ersten Wochentag.
-
Benachrichtigungen zu Chat-Nachrichten zeigen den Anfang der Nachricht (in Räumen mit Verfasser) statt ihren Titel zu wiederholen, in der App und in der Benachrichtigungszentrale der Web-Seiten. Nur, solange die Unterhaltung lesbar ist; Mails und Push-Nachrichten behalten ihren allgemeinen Text.
-
App Die Benachrichtigungen (Glocke) und das „Mehr“-Menü schieben sich wie das Menü der Seiten über die Tabs hoch, die Tab-Leiste bleibt darunter sichtbar; Herunterziehen, ein Tipp darüber oder ihr Knopf schließt sie wieder.
-
CVE-Radar: Eine Team-Prüfung kann jedes Mitglied der Gruppe fragen (z. B. prüft jeder den eigenen Client); jede Antwort wird gespeichert und die Prüfung bleibt offen, bis alle Mitglieder geantwortet haben, die sich in den letzten 90 Tagen angemeldet haben (einstellbar). Bisher ersetzte jede Antwort die vorige.
-
Kalender: Die Anfangszeit eines Eintrags kann jetzt auch am oberen Rand gezogen werden, nicht nur die Endzeit.
-
Benachrichtigungs-Mails (z.B. zu neuen Chat-Nachrichten) enthalten jetzt einen Link zum Chat bzw. zum betroffenen Eintrag.
-
Benachrichtigungsregeln: Die Menüeinträge von Plugins (z. B. des CVE-Radars) können als Zähler im Menü und als Link der Benachrichtigungen gewählt werden.
-
App Die Zähler an Chat und Benachrichtigungen ziehen sofort nach: Eine Push-Nachricht setzt die Zahl an der Glocke beim Eintreffen, und ein gelesener Chat oder eine erledigte Benachrichtigung in den Seiten nimmt sie gleich weg, nicht erst mit der nächsten Aktualisierung eine Minute später.
-
Kalender: Ein aus einem Break geöffneter Zeitbericht behält seine Endezeit, wenn die Startzeit geändert wird.
ProjectForge 9.2.5: Melden und Blockieren im Chat, CVE-Radar mit OSV.dev, konfigurierbare Passwortregeln
2026-11-03, Tag 9.2.5-RELEASE Nur Quellcode
-
Chat: Nachrichten melden, Nutzer blockieren
-
CVE-Radar: Abgleich der Bibliotheken mit den Advisories von OSV.dev
-
Passwörter: konfigurierbare Anzahl von Zeichenklassen
-
Korrektur: Die Bruttosumme einer Rechnung stimmt auf den Cent mit der E-Rechnung überein
Überblick
-
Chat: Nachrichten anderer können den Administratoren gemeldet und Nutzer blockiert werden: keine Direktnachrichten, Benachrichtigungen, Erwähnungen oder Suchtreffer von ihnen.
-
CVE-Radar: Die Bibliotheken des Inventars werden nach Paket und Version gegen die Advisories von OSV.dev abgeglichen (Maven, npm, PyPI, NuGet, Packagist, Go, crates.io), auch wenn die NVD sie spät oder gar nicht nennt.
-
Anmeldung: Die Anzahl der Zeichenklassen, die ein Passwort enthalten muss (z. B. 3 von 4), ist neben der Mindestlänge konfigurierbar; Login-Namen in projectforge.2fa.exemptUsers brauchen keinen zweiten Faktor, z. B. der Zugang einer App-Store-Prüfung.
-
Mobile App (in Vorbereitung): Der Chat-Tab zeigt kein Menü der Webversion, ein erneuter Klick auf den Chat-Button führt zurück zur Chat-Startseite; schärfere Adressbilder in der Adressliste.
-
Korrekturen: Die Bruttosumme einer Rechnung ist die Nettosumme plus die MwSt-Summe und weicht nicht mehr um einen Cent von der E-Rechnung ab; der Export der E-Rechnung bricht bei abweichenden Summen ab; das Rechnungsdokument zeigt Menge und Einzelpreis mit allen Nachkommastellen.
Alle Änderungen
-
Einstellung projectforge.2fa.exemptUsers: Login-Namen, die keinen zweiten Faktor brauchen, z. B. für den Zugang einer App-Store-Prüfung.
-
Chat: Nachrichten anderer können den Administratoren gemeldet und Nutzer blockiert werden (keine Direktnachrichten, keine Benachrichtigungen, Erwähnungen oder Suchtreffer von ihnen).
-
CVE-Radar: Die Bibliotheken des Inventars werden nach Paket und Version gegen die Advisories von OSV.dev abgeglichen (Maven, npm, PyPI, NuGet, Packagist, Go, crates.io), auch wenn die NVD sie spät oder gar nicht nennt; ein passendes Advisory wird unabhängig von seiner Bewertung eine Schwachstelle.
-
Passwörter: Die Anzahl der Zeichenklassen, aus denen ein Passwort Zeichen enthalten muss (Großbuchstaben, Kleinbuchstaben, Ziffern, Sonderzeichen, z. B. 3 von 4), ist neben der Mindestlänge konfigurierbar.
-
Adressbilder: größere Vorschaubilder, damit sie in der Adressliste der App scharf dargestellt werden (vorhandene Vorschaubilder werden erneuert, wenn die Bilder in der Administration erneut verkleinert werden).
-
App Der Chat-Tab zeigt kein Menü der Webversion; ein erneuter Klick auf den Chat-Button führt zurück zur Chat-Startseite.
-
Rechnungen: Rechnungsdokument und E-Rechnung rechnen mit denselben Formeln
-
Die Bruttosumme ist die Nettosumme plus die MwSt-Summe. Bisher war sie die Summe der Bruttobeträge der Positionen, deren MwSt je Position gerundet ist, und konnte um einen Cent von der E-Rechnung abweichen, sodass der Empfänger die Rechnung ablehnen konnte.
-
Der Export einer E-Rechnung (XRechnung, ZUGFeRD) vergleicht ihre Summen mit denen der Rechnung und bricht ab, wenn sie abweichen.
-
Das Rechnungsdokument zeigt Menge und Einzelpreis mit allen Nachkommastellen wie die E-Rechnung, statt auf zwei gerundet.
-
ProjectForge 9.2.4: E-Rechnung mit Bestellerfeldern, Mobile App mit mehreren Servern und Strukturbaum, täglicher Fehler-Digest
2026-11-02, Tag 9.2.4-RELEASE Nur Quellcode
-
E-Rechnung: Bestellnummer, Abteilung und Kostenstelle des Bestellers
-
Mobile App (in Vorbereitung): Wechsel zwischen mehreren Servern, Strukturbaum für Zeitberichte
-
App und Server warnen sich gegenseitig, wenn die Gegenseite zu alt ist
-
Fehler-Digest einmal täglich statt stündlich
-
Korrektur: Das Verbinden der App hinter einem SSO-Proxy klappt schon beim ersten Versuch
Überblick
-
E-Rechnung: neue Felder Bestellnummer (BT-13), Abteilung des Bestellers (BT-56) und Kostenstelle (BT-19) an der Rechnung und am Konto; die Beschriftungen nennen den E-Rechnungs-Term (BT-x); die Rechnungsvorlage erhält die Variablen Bestellnummer und Kostenstelle, die Abteilung steht in der Adresse.
-
Mobile App (in Vorbereitung): Die Anmeldungen mehrerer Server werden gemerkt und der Server lässt sich im Kontomenü wechseln; Zeitberichte wählen das Strukturelement im Strukturbaum, mit einer Suche über den ganzen Pfad, und Kostenträger in einer scrollbaren Auswahlbox; eine Warnung, wenn die App für den Server zu alt ist oder der Server für die App, „Mein Konto“ markiert veraltete Apps.
-
Fehler-Digest: Wird einmal täglich um 07:00 Uhr versendet, nur dringende Probleme lösen ihn vorzeitig aus (höchstens einmal pro Stunde); konfigurierbar.
-
Auftrags-E-Mails: übersichtlicher, die Buttons stehen oben, dazu ein Button zu den Auftragsbenachrichtigungen.
-
Korrekturen: Das Verbinden der App hinter einem SSO-Proxy klappt schon beim ersten Versuch, auch wenn der Proxy den Browser ohne die Parameter des Links zurückschickt.
Alle Änderungen
-
App Eine Warnung, wenn die App für den Server zu alt ist oder der Server für die App; „Mein Konto“ markiert veraltete Apps.
-
App Die Anmeldungen mehrerer Server werden gemerkt, und der Server lässt sich im Kontomenü wechseln, ohne sich neu anzumelden; dort wird auch ein weiterer Server hinzugefügt.
-
E-Rechnung: neue Felder Bestellnummer (BT-13), Abteilung des Bestellers (BT-56) und Kostenstelle (BT-19) an der Rechnung und am Konto (Abteilung, Kostenstelle); die Beschriftungen im Rechnungs- und Kontoformular nennen den E-Rechnungs-Term (BT-x), in dem das Feld übertragen wird. Die Rechnungsvorlage erhält die Variablen Bestellnummer und Kostenstelle (mit isBestellnummer/isKostenstelle), die Abteilung steht in der Adresse.
-
App Zeitberichte: Das Strukturelement kann im Strukturbaum gewählt werden (Ebene für Ebene, beginnend bei der aktuellen, mit einer Suche in der Ebene und allem darunter), die Suche findet Wörter im ganzen Pfad, der Pfad steht über dem Titel, Kostenträger werden in einer scrollbaren Auswahlbox mit Nummer und Text gewählt, der Zeitberichte-Tab ist nicht mehr als „Under construction“ markiert, und die Vorlagen öffnen sich als Liste statt als Reihe von Chips.
-
Auftrags-E-Mails: übersichtlicher, die Buttons stehen oben, dazu ein Button zu den Auftragsbenachrichtigungen.
-
Fehler-Digest: Der reguläre Digest wird einmal täglich um 07:00 Uhr statt stündlich versendet, nur dringende Probleme (Sicherheit, Daten, sofortige Ereignisse) lösen ihn vorzeitig aus, höchstens einmal pro Stunde. Konfigurierbar über projectforge.support.errorDigest.interval, sendAt und urgentMinGap.
-
App Das Verbinden der App hinter einem SSO-Proxy klappt schon beim ersten Versuch, auch wenn der Proxy den Browser nach seiner Anmeldung ohne die Parameter des Links zurückschickt.
ProjectForge 9.2.3: Kostenträger ohne Punkte kopieren, Kopier-Button an Codeblöcken
2026-11-02, Tag 9.2.3-RELEASE Nur Quellcode
-
Rechnungen: Kost1 und Kost2 ohne Punkte kopieren
-
Chat: Kopier-Button an Codeblöcken
-
Fix: Skripte mit Klassen der Plugins CVE-Radar und IHK laufen wieder
Überblick
-
Rechnungen: Kost1 und Kost2 einer Kostenzuweisung lassen sich ohne Punkte kopieren, in der zugeklappten Position wie neben den Feldern einer aufgeklappten, z. B. zur Eingabe in ein anderes Buchhaltungssystem.
-
Chat: Codeblöcke in Nachrichten und Raumbeschreibungen haben einen Button zum Kopieren.
-
Fixes: Kotlin-Skripte brechen nicht mehr mit "Unresolved reference 'cveradar'" ab, die Klassen der Plugins CVE-Radar und IHK sind wieder im Klassenpfad der Skripte.
Alle Änderungen
-
Chat: Codeblöcke in Nachrichten und Raumbeschreibungen haben einen Button zum Kopieren.
-
Rechnungen: Kost1 und Kost2 einer Kostenzuweisung lassen sich ohne Punkte kopieren, z. B. zur Eingabe in ein anderes Buchhaltungssystem.
-
Scripting: Kotlin-Skripte brachen mit "Unresolved reference 'cveradar'" ab, die Klassen der Plugins CVE-Radar und IHK fehlten im Klassenpfad der Skripte.
ProjectForge 9.2.2: Mobile App mit Benachrichtigungen und Adressbuch, CVE-Radar-Benachrichtigungen
2026-11-02, Tag 9.2.2-RELEASE Nur Quellcode
-
Mobile App (in Vorbereitung): Benachrichtigungen mit Push und Adressbuch
-
CVE-Radar: Benachrichtigungen über neue Befunde und veraltete Bibliothekslisten
-
Korrektur: Kost2 fehlte manchmal im Strukturbaum, in der Projektliste und bei Zeitberichten
-
Korrektur: Ein späterer Zahlplan schiebt auch die Rechnung einer abgeschlossenen Auftragsposition
Überblick
-
Mobile App (in Vorbereitung): Benachrichtigungen der Web-Version mit Push-Nachrichten (iPhone, APNs); ein Adressbuch wie die Kontakte-App, auch offline; Anmeldung hinter einem SSO-Proxy, zuletzt benutzte Server, mehr Platz für die Seiten und das helle oder dunkle Erscheinungsbild der Webseiten.
-
CVE-Radar: eine Benachrichtigungsregel für neue Befunde ohne Details, ein Regeltyp für veraltete Bibliothekslisten einer Komponente, ein Tab für die Beschreibung in der Akte eines Falls und eine schnellere Startseite.
-
Kalender auf kleinen Bildschirmen: Die Kalenderauswahl hat eine eigene Zeile, statt verdeckt zu werden.
-
Korrekturen: Kost2 fehlt nicht mehr in Übersichten wie dem Strukturbaum, der Projektliste oder der Kost2-Auswahl eines Zeitberichts (z. B. nach dem Reaktivieren eines Projekts); im Auftragsbuch schiebt ein Zahlplan mit Datum in einem Folgemonat auch die Rechnung einer abgeschlossenen Position; die Akte eines CVE-Radar-Falls ohne CVE öffnet sich wieder.
Alle Änderungen
-
Mobile App: Benachrichtigungen und Push (iPhone)
-
App Die Benachrichtigungen der Web-Version (Regeln, Chat) werden auch in der App gezeigt: eine Glocke mit der Anzahl, die Liste mit dem Archiv sowie Bestätigen und Erledigen; ein Link öffnet die Seite in der App.
-
App Eine neue Benachrichtigung weckt die App mit einer Push-Nachricht (APNs,
projectforge.push.apns.*), ohne ihren Inhalt in der Nachricht. Ohne konfigurierten Schlüssel wird nichts gesendet und die App fragt wie bisher regelmäßig ab.
-
-
Mobile App (in Vorbereitung): Zeitberichte
-
App Die App bucht Zeitberichte am Smartphone: eine Wochenleiste mit den Tagessummen, die Buchungen des Tages mit den Lücken dazwischen (ein Tipp bucht eine Lücke), zuletzt verwendete Buchungen und Vorlagen als Ausgangspunkt, eine Suche nach Strukturelementen und die automatisch gewählte Kostenstelle, wenn das Strukturelement nur eine hat. Die Prüfungen des Servers (Überschneidung, geschlossene Strukturelemente, geschützte Zeiträume) gelten wie in der Webversion.
-
App Ein Timer in der App startet und stoppt eine Buchung auf dem Gerät; beim Stoppen öffnet sich das Formular mit der auf 5 Minuten gerundeten Zeit.
-
App Die Zeitberichtsliste der Webseiten wechselt auf den Tab der App; das Formular einer einzelnen Buchung bleibt beim Öffnen über einen Link in den Webseiten.
-
-
CVE-Radar: Benachrichtigung ohne Details und über veraltete Bibliothekslisten
-
Eine neue Benachrichtigungsregel „Neue Befunde des CVE-Radars“ beginnt mit einem Text ohne Details („es gibt möglicherweise Updates“) und einem Link auf die Liste; die neue Variable cvrListLink verlinkt immer auf die Liste.
-
Neuer Regeltyp „Veraltete Bibliothekslisten des CVE-Radars“: Das verantwortliche Team einer Komponente, deren Bibliotheksliste vor mehr als einer Anzahl Tage übernommen wurde (vorab 30), wird höchstens einmal pro Woche benachrichtigt, und eine Aktualisierung der Liste erledigt die Benachrichtigung. Der Tag der letzten Liste wird jetzt je Komponente gespeichert.
-
-
Mobile App (in Vorbereitung)
-
App Hinter einem SSO-Proxy (z. B. Authentik als Forward Auth) bekommt die App die Sitzung des Proxys aus der Anmeldung im Browser (
projectforge.app.proxyCookies); läuft sie ab, meldet sich die App erneut im Browser an. -
App Die Anmeldung der App bietet die zuletzt benutzten Server an, und das Abmelden klappt auch, wenn der Server nicht erreichbar ist.
-
App Visitenkarten werden in der App gespeichert und auch offline gezeigt; sie werden beim Öffnen des Tabs still und per Button neu geladen und lassen sich in den Apple Wallet übernehmen, wenn der Server dafür konfiguriert ist (iPhone), auch über den Link der Webseite in der App.
-
App Die App gibt den Seiten mehr Platz: keine Titelleiste über den Webseiten und dem Chat, eine schmale Navigationsleiste nur mit Symbolen und im Querformat eine schmale Navigation an der Seite.
-
App In der App wechseln die Menüpunkte „Chat“ und „Meine Visitenkarten“ sowie die Glocke der Webseiten auf den eigenen Tab bzw. die eigene Liste der App; in den neuen Einstellungen der App kann jeder davon in der Webversion bleiben.
-
App Die App hat ein Adressbuch wie die Kontakte-App: Suchfeld, Abschnitte mit Index am Rand, und ein Tipp auf eine Nummer bietet Anruf oder Nachricht an, eine E-Mail-Adresse öffnet das Mailprogramm. Alle Adressen liegen auf dem Gerät (auch offline) und werden still aktualisiert; Bearbeiten öffnet das Formular der Webseiten, und die Adressliste der Webseiten wechselt auf den Tab der App.
-
App Die eigenen Seiten der App folgen dem in den Webseiten gewählten hellen oder dunklen Erscheinungsbild (auch offline), und die Webseiten blitzen beim Laden nicht mehr weiß auf.
-
-
Schnellere erste Seite großer Listen: die Startseite des CVE-Radars lädt nicht mehr alle Schwachstellen, um die Liste aufzubauen
-
Kalender auf kleinen Bildschirmen: Die Kalenderauswahl hat eine eigene Zeile unter Titel und Schaltflächen, statt von ihnen verdeckt zu werden.
-
CVE-Radar: Die Akte eines Vorfalls öffnet sich wieder und hat einen Tab für ihre Beschreibung
-
Die Akte eines Falls ohne CVE zeigte eine leere Seite. Sie öffnet sich jetzt beim neuen ersten Tab „Beschreibung“, der die Beschreibung des Falls zeigt und dem Security-Team das Bearbeiten mit einem Richtext-Editor erlaubt.
-
-
Kost2 fehlte manchmal in Übersichten wie dem Strukturbaum, der Projektliste oder der Kost2-Auswahl eines Zeitberichts, obwohl sie vorhanden war: etwa nach dem Reaktivieren eines Projekts oder bei einer Kost2, die während des Neuladens der Caches im Hintergrund angelegt wurde.
-
Auftragsbuch: Ein Zahlplan mit Datum in einem Folgemonat schiebt nun auch die Rechnung einer abgeschlossenen Position (Filter "zu fakturieren", nächste Rechnung)
ProjectForge 9.2.1: CVE-Radar mit KI-Prompts und Ad-hoc-Prüfung, Apple Wallet, mobiles Layout
2026-11-01, Tag 9.2.1-RELEASE Nur Quellcode
-
CVE-Radar: Ad-hoc-Prüfung hochgeladener Dateien, Findings-Report und Fallrecherche mit Prompts für ein freigegebenes KI-System
-
Digitale Visitenkarten im Apple Wallet
-
Mehr Platz für Inhalte auf mobilen Geräten
-
Korrektur: Geplante Rechnungen zählen nicht mehr in der Rechnungsstatistik
Überblick
-
CVE-Radar: Ad-hoc-Prüfung von Lockfiles, SBOMs oder einem Zip solcher Listen gegen alle Schwachstellen, ohne etwas zu speichern; Export der offenen Findings eines Projekts mit einem Prompt für Vorschläge zur Behebung; Recherche eines neuen Falls mit einem KI-System; Fall als JSON herunterladen und importieren; Upload aller Listen einer Komponente in einem Zip und die Lockfile von pnpm.
-
Digitale Visitenkarten: Karte zum Apple Wallet hinzufügen (braucht ein Pass-Type-ID-Zertifikat).
-
Mobile App (in Vorbereitung): Anmeldung über den Browser mit zweitem Faktor, die eigenen Visitenkarten auch ohne Netz, verbundene Apps in Mein Zugang.
-
Mobile Geräte: auf schmalen oder niedrigen Bildschirmen sind Logo-Zeile und Statusleiste ausgeblendet, kleinere Abstände, ein kompakter Listenfuß, scrollbare Tabs; sehr niedrige Bildschirme scrollen.
-
Korrekturen: Geplante Rechnungen zählen nicht mehr in der Statistik der Rechnungsliste.
Alle Änderungen
-
Digitale Visitenkarten: Karte zum Apple Wallet hinzufügen (braucht ein Pass-Type-ID-Zertifikat, siehe Administrationshandbuch).
-
CVE-Radar: Ad-hoc-Prüfung hochgeladener Dateien gegen alle Schwachstellen
-
Die neue Seite Ad-hoc-Prüfung nimmt Lockfiles, SBOMs, Ausgaben von Build-Werkzeugen oder ein zip mit solchen Listen und prüft jedes Paket gegen die importierten Schwachstellen, mit einem Fortschrittsbalken je Datei. Es wird nichts gespeichert; alle mit Leserolle dürfen prüfen, und das Ergebnis sieht nur, wer die Prüfung gestartet hat.
-
Das Ergebnis listet die Schwachstellen mit Paket, Version, Datei und dem Fall des Security-Teams auf, lässt sich als JSON herunterladen und kommt mit einem Prompt, der ein freigegebenes KI-System fragt, wie sie behoben werden. Die Namen der Dateien werden vorab ersetzt.
-
-
CVE-Radar: neuen Fall mit einem KI-System recherchieren
-
Mit KI recherchieren (Security-Team) baut aus der CVE-ID oder einer Beschreibung des Vorfalls, Quellen und Hinweisen einen Prompt für ein freigegebenes KI-System, mit den NVD-Daten einer importierten CVE. Eine direkte Anbindung gibt es nicht: Der Prompt wird dorthin kopiert, die Antwort wieder eingefügt. Der Dialog hat drei Schritte (Angaben, Prompt, Antwort), jeweils mit dem Weg zurück; der Prompt lässt sich kopieren oder als Datei herunterladen.
-
Die Antwort (ein JSON-Block) wird geprüft und als Vorschau mit Kopier-Knopf je Wert gezeigt; Fall anlegen legt den Fall mit Titel, Beschreibung, Priorität und Begründung, Fix-Version, Workaround, Maßnahmen und Referenzen an, markiert als mit Unterstützung eines KI-Systems erstellt.
-
-
CVE-Radar: Fall als JSON herunterladen und wieder importieren
-
Als JSON herunterladen in der Akte eines Falls speichert seine Werte, so wie sie gespeichert sind (ohne Status, Bearbeitung, Bewertungen, Team-Prüfungen und Diskussion).
-
Fall importieren (Security-Team) legt aus einer solchen Datei nach einer Vorschau einen neuen Fall an, z. B. um einen Fall in eine andere Instanz von ProjectForge zu übernehmen.
-
Fall importieren nimmt auch die Antwort einer KI auf den Prompt von Mit KI recherchieren an, z. B. als Datei gespeichert; beim Kopieren typografisch gewordene Anführungszeichen werden begradigt.
-
-
CVE-Radar: Findings eines Projekts exportieren, mit einem Prompt für Vorschläge zur Behebung
-
Die offenen Findings eines Knotens im Inventar und darunter als eine JSON-Datei: je Schwachstelle die NVD-Daten, der Fall des Security-Teams und die gefundenen Technologien mit Versionen und Paket-URLs. Nur, was man sehen darf; interne Namen werden vorab durch neutrale ersetzt.
-
Ein Prompt mit dem Report fragt ein freigegebenes KI-System, wie jede Schwachstelle im Projekt am besten behoben wird: ob es wirklich betroffen ist, die Zielversion und wie sie bei einer transitiven Abhängigkeit erzwungen wird, ein Workaround und wie sich die Behebung prüfen lässt.
-
-
CVE-Radar: weitere Wege, die Bibliotheken einer Komponente hochzuladen
-
Alle Listen einer Komponente lassen sich in einem Zip hochladen, gesammelt von einem Script im Projekt (das Benutzerhandbuch hat ein Beispiel): Lockfiles, SBOMs, Ausgabe der Build-Werkzeuge und Paketlisten der Images. Gelesen werden nur die Dateien solcher Listen; Dateien, die Tokens enthalten können (.npmrc, .env, gradle.properties, settings.xml), bleiben ungelesen. Die Vorschau zeigt jede Datei des Zips mit ihrem Format.
-
Die Lockfile von pnpm (pnpm-lock.yaml, Versionen 5, 6 und 9) wird gelesen, ohne die Entwicklungsabhängigkeiten.
-
Der Upload-Dialog zeigt, wie sich die Pakete eines Container-Images auflisten lassen (z. B. eclipse-temurin: dpkg-query, apk, rpm oder eine SBOM von syft), in denen native Bibliotheken wie brotli, zlib oder OpenSSL auftauchen, und verlinkt das Kapitel im Benutzerhandbuch.
-
-
Mobile App (in Vorbereitung)
-
App Die ProjectForge-App für iOS und Android meldet sich über den Browser an, mit Passwort und zweitem Faktor (WebAuthn oder Code) wie gewohnt; vor dem Verbinden einer App fragt der Browser noch einmal nach. Die erste Version zeigt die eigenen digitalen Visitenkarten, auch ohne Netz.
-
App Alle anderen Seiten von ProjectForge öffnen sich in der App, ohne zweite Anmeldung. Mit dem Abmelden der App enden auch sie.
-
App Mein Zugang: die verbundenen Apps mit ihrer letzten Nutzung, jede kann abgemeldet werden. Eine Passwortänderung meldet alle Apps ab; eine 90 Tage nicht genutzte App wird automatisch abgemeldet.
-
-
Mehr Platz für Inhalte auf mobilen Geräten
-
Auf schmalen oder niedrigen Bildschirmen (z. B. Smartphone im Querformat) sind Logo-Zeile und Statusleiste ausgeblendet, und die Abstände von Bearbeitungsseiten, Tabs, Aktionsleiste und Listenfuß sind kleiner; Changelog, Version und Copyright stehen dort im Benutzermenü.
-
Der Listenfuß zeigt nur noch den Bereich und die Seitenwechsel-Schaltflächen um die aktuelle Seite; die Tabs einer Bearbeitungsseite lassen sich horizontal scrollen.
-
Das Menü eines Bereichs oben rechts auf seinen Seiten (z. B. CVE-Radar) ist auf schmalen Bildschirmen eine einzelne Menü-Schaltfläche; in der Akte eines CVE-Radar-Falls scrollt der Kopf auf schmalen oder niedrigen Bildschirmen mit dem Inhalt mit.
-
-
Ausgangsrechnungen: Geplante Rechnungen zählen nicht mehr in der Statistik der Rechnungsliste (Brutto, Netto, offen, überfällig).
-
Kleine Bildschirme: Bei sehr geringer Höhe (z. B. Smartphone im Querformat) scrollt die Seite jetzt, sodass der Inhalt unterhalb des Kopfbereichs erreichbar ist.
ProjectForge 9.2: Java 21, JCR entfernt, CVE-Radar, digitale Visitenkarten
2026-10-30, Tag 9.2.0-RELEASE QuellcodeJar (GitHub)
SHA-256 von projectforge-application-9.2.0.jar: 3189e644cfef3e1b9d7215147f1617c4b1430b33899ce949608d6d6852303df8
-
Java 21 erforderlich, JCR entfernt (zuvor mit 9.1.x migrieren)
-
CVE-Radar (Plugin): NVD-Import, Systeminventar, Abgleich mit Benachrichtigung, Triage
-
Digitale Visitenkarten mit QR-Code (vCard)
-
Auftragsbenachrichtigungen pro Benutzer: sofort, Tageszusammenfassung oder keine
-
Forecast: neue Aufschlüsselungstabelle; Korrekturen für veraltete Rechnungslisten und Suchen in seitenweisen Listen
Überblick
-
Java 21: ab 9.2 erforderlich, das ausführbare JAR startet nicht mehr unter Java 17.
-
Dateien: das JCR (Apache Oak) ist entfernt, Anhänge liegen in der Datenbank und Datentransfer-Dateien im Dateisystem.
-
CVE-Radar: Fälle und Team-Prüfungen, Import der Schwachstellen aus der NVD, Systeminventar mit Technologiekatalog und Bibliotheksimport (SBOM, Lockfiles, Paketlisten), Abgleich der Schwachstellen mit dem Inventar samt Benachrichtigungsregel für neue Befunde, eine Akte je CVE mit Bewertung, Maßnahmen und Diskussion.
-
Digitale Visitenkarten: mehrere Karten pro Benutzer mit QR-Code, Daten aus einer Adresse übernommen.
-
Auftragsbenachrichtigungen: pro Benutzer sofort, als Tageszusammenfassung oder gar nicht; ein Empfänger erhält höchstens eine Mail und eine SMS pro Regel und Tag.
-
Forecast und Deckungsbeitrag: neue Tabelle "Aufschlüsselung des Forecasts", vorläufiger Umsatz nicht gebuchter Rechnungen aus den Kostenzuweisungen.
-
Projekte: der Status ist Akquise, aktiv, pausiert oder beendet.
-
Performance und Bedienung: weniger Anfragen pro Seitenaufruf, Upload-Geschwindigkeit im Datentransfer, seitliches Blättern der Chat-Bilder, Dialoge fragen vor dem Verwerfen von Eingaben.
-
Korrekturen: Rechnungslisten mit veraltetem Bezahlt-Status nach Massenänderung, veraltete Ergebnisse in durchsuchten langen Listen.
Alle Änderungen
Java 21 ist Voraussetzung - ProjectForge 9.2 wird für Java 21 kompiliert, das ausführbare JAR startet nicht mehr unter Java 17. Das Docker-Image enthält bereits Java 21.
JCR entfernt - Dateien liegen im Dateispeicher (Anhänge in der Datenbank, Datentransfer-Dateien im Dateisystem). Wer noch das JCR nutzt, migriert zuerst mit 9.1.x, bevor auf 9.2 aktualisiert wird. Siehe Administrationshandbuch, "Dateien aus dem JCR herausholen".
Vor dem Update - Datenbank sichern; das Schema wird beim ersten Start automatisch migriert.
-
CVE-Radar (Plugin, standardmäßig nicht aktiv): erster Teil mit echten Daten
-
Fälle: Schwachstellen und Vorfälle ohne CVE mit Maßnahmen, Behebungskriterien und einer Abschlussübersicht, ob ein Fall geschlossen werden kann.
-
Team-Prüfungen: Gruppen beantworten, ob ihre Projekte oder Systeme betroffen sind.
-
Import der Versionen und Prüfergebnisse eines Client-Agents von einem Log-Server (Graylog), konfigurierbar.
-
Mein CVE-Radar: Mitarbeitende bestätigen die Maßnahmen und sehen ihre eigenen Geräte.
-
-
CVE-Radar: Schwachstellen aus der NVD
-
Import der Schwachstellen (CVEs) aus der National Vulnerability Database nach Zeitplan und im Jobmonitor, inkrementell und ab einem einstellbaren CVSS-Wert; standardmäßig aus.
-
Die Startseite des CVE-Radars listet die importierten Schwachstellen mit Wert, Schweregrad, Schwachstellenarten und Daten; der Prototyp mit Testdaten ist auf eine Demo-Seite umgezogen, die von dort verlinkt ist.
-
Der Tab "Statistik" des CVE-Radars zeigt die gemeldeten Fälle und die von der NVD veröffentlichten Schwachstellen pro Tag, Woche oder Monat.
-
-
Datentransfer (auch öffentlich): Der Upload zeigt die aktuelle Geschwindigkeit in kB/s bzw. MB/s an.
-
CVE-Radar: Inventar der Systeme
-
Systeme als Baum: Bereiche beliebiger Tiefe, darunter Systeme mit Instanzen (Installationen), Komponenten und Technologien. Alle legen Bereiche für eine eigene Gruppe an; die Gruppen eines Bereichs und der Bereiche darüber sehen und ändern, was darunter hängt, das Security-Team liest interne Systeme.
-
Bereiche und Systeme lassen sich umhängen; der Security Officer hängt einen Bereich unter einen anderen, etwa unter einen Kunden.
-
Technologiekatalog: Ökosysteme, Produkte und Frameworks sowie Bibliotheken als Baum (eine Bibliothek kann zu mehreren Frameworks gehören). Das Security-Team pflegt ihn, die Technologien einer Komponente werden daraus gewählt.
-
Bibliotheken einer Komponente aus Listen: SBOMs (CycloneDX oder SPDX als JSON, alle Ökosysteme und Pakete des Betriebssystems über ihre Package-URL), die Lockfiles von npm, yarn, Composer, Go und Cargo und die festgelegten Requirements von Python, Paketlisten von Debian-, Alpine- und RPM-Systemen, die Ausgabe von Maven oder Gradle oder die Dateinamen eines Jars, mehrere Dateien werden zusammengeführt, auch die transitiven Abhängigkeiten; eine Liste mit Suchfeld zeigt sie an. Die Vorschau vor dem Übernehmen zeigt, was neu ist, entfällt oder in der Version geändert ist. Der Dialog nennt, welche Datei oder welcher Befehl zu nehmen ist.
-
-
CVE-Radar: Akte einer CVE mit Bewertungen, Maßnahmen und Diskussion
-
Eine Zeile der Schwachstellenliste öffnet die Akte der CVE: NVD-Daten mit den Hinweisen zur Behebung getrennt von den übrigen Referenzen, die Bewertungen der Security-Team-Mitglieder nebeneinander, die verbindliche Priorität mit Begründung, die Maßnahmen für Techies und Nicht-Techies, Fix-Version, Workaround und Referenzen.
-
Übernehmen, Zuweisen, Status und eine vorgeschlagene Priorität aus dem CVSS-Wert und dem KEV-Katalog der CISA; eine Änderung über einer neueren Fassung des Falls wird abgelehnt.
-
Diskussion eines Falls im Chat für alle Lesenden; jede Team-Prüfung hat eine eigene Akte mit einer Diskussion, die nur die gefragte Gruppe und das Security-Team sehen.
-
Die Rollen des CVE-Radars (Lesende, Security-Team, Security Officer) sind PF-Gruppen, die in den Einstellungen
readGroup,writeGroupundsecurityOfficerGroupstehen.
-
-
Digitale Visitenkarten
-
Mehrere Karten pro Benutzer, jede mit einem QR-Code (vCard) zum Vorzeigen, z. B. als Screenshot. Erreichbar über das Benutzermenü und die Adressliste.
-
Die Daten werden aus einer Adresse des Adressbuchs übernommen (die eigene wird vorgeschlagen), pro Feld ausgewählt und lassen sich ändern; private Daten nur nach Auswahl.
-
Das Foto der eigenen Adresse kann in der vCard verlinkt werden: Der Gateway liefert es unter einer signierten URL aus und braucht dafür keine weiteren Daten.
-
-
Auftragsbenachrichtigungen (ein Button in der Auftragsliste und neben der E-Mail-Checkbox jedes Auftrags): pro Benutzer einstellbar, ob die E-Mails zu geänderten Aufträgen sofort, als tägliche Zusammenfassung oder gar nicht kommen, als Standard und als Ausnahmen für einzelne Projekte oder Kunden.
-
CVE-Radar: Schwachstellen mit dem Inventar abgeglichen
-
Jede importierte Schwachstelle wird mit den Technologien des Inventars abgeglichen, nach jedem Import und jeder Änderung des Inventars oder des Katalogs: über die CPE oder den Katalogeintrag einer Technologie, sonst über ihren Namen (dann nur „möglicherweise betroffen“), mit den Versionsbereichen der NVD. Eine Komponente eines Systems gilt für jede seiner Instanzen.
-
Die Befunde erscheinen in der Akte einer CVE (Reiter „Betroffen“), als Zahl mit dem Filter „Mit Treffern im Inventar“ in der Liste der Schwachstellen und im Inventarbaum, dort mit farbig markierten Zeilen. Installationen, die jemand nicht sehen darf, werden nur gezählt. Das Security-Team verwirft Fehltreffer mit einer Begründung; ein verworfener Befund bleibt verworfen, auch wenn eine Version geändert und zurückgesetzt wird.
-
Der Inventarbaum zeigt, wann die Technologien einer Komponente zuletzt aktualisiert wurden.
-
Diskussionen zu einer CVE nehmen Anhänge auf, die nach 30 Tagen gelöscht werden; der Hinweis auf vertrauliche Details erscheint orange beim Schreiben.
-
Neuer Regeltyp für Benachrichtigungen „Neue Befunde des CVE-Radars“: Benachrichtigt wird das verantwortliche Team eines betroffenen Systems (die Gruppe des Systems oder des nächsten Bereichs darüber), die Empfänger der Regel in Kopie, direkt nachdem der Abgleich etwas Neues gefunden hat. Eine Regel gilt ab einem CVSS-Schweregrad (bekannt ausgenutzte Schwachstellen immer), wahlweise auch für mögliche Befunde und noch nicht bewertete Schwachstellen. Jede Benachrichtigung nennt nur die für den Empfänger sichtbaren Systeme und jeden Befund einmal; der Text hat Variablen für die Schwachstellen, die Systeme, den höchsten Schweregrad und einen Link.
-
-
Tabellen speichern ihr unverändertes Spaltenlayout nicht mehr bei jedem Seitenaufruf erneut.
-
Weniger Requests pro Seitenaufruf: Der Ungelesen-Zähler des Chats in der Kopfleiste kommt mit dem Benutzerstatus statt mit zwei Listen-Requests, wird für Menü und Status nur einmal gezählt, und der Ereignis-Stream versucht es nach abgelaufener Session nicht mehr ständig.
-
Auftragsstatistik, Prognose: neue Tabelle "Aufschlüsselung der Prognose" je Monat mit den fakturierten Summen, der Rest-Prognose beauftragter Festpreis- und Pauschalpositionen, beauftragter Time-&-Materials-Positionen (Run-Rate) und noch nicht beauftragter Positionen (gewichtet) sowie dem Teil der Prognose, für den bereits eine Rechnung geplant ist.
-
Chat: Die Bilder einer Nachricht stehen nebeneinander (bei vielen mit seitlichem Scrollen), und die Großansicht blättert mit Buttons und Pfeiltasten durch sie.
-
Dialoge mit Eingabefeldern fragen nach, bevor sie per Klick daneben, Esc oder Schließen-Button geschlossen werden, sobald etwas eingegeben wurde. Die Eingaben gehen so nicht mehr versehentlich verloren.
-
Properties-Editor: Die Beschreibungen verlinken auf die passenden Abschnitte des Administrationshandbuchs und unterstützen Code, Fettdruck und Links.
-
Ab Version 9.2 ist Java 21 Voraussetzung: ProjectForge wird für Java 21 kompiliert, das ausführbare JAR startet nicht mehr unter Java 17. Das Docker-Image enthält bereits Java 21.
-
Deckungsbeitrag: Der vorläufige Umsatz noch nicht gebuchter Debitorenrechnungen wird aus den Kostzuweisungen der Rechnungspositionen (Kost2 → Projekt) übernommen, wenn diese vollständig definiert sind; sonst wie bisher aus dem Projekt der Rechnung.
-
Dateien: Das JCR (Apache Oak) wurde entfernt, alle Dateien liegen im Dateispeicher (Anhänge in der Datenbank, Datentransfer-Dateien im Dateisystem). Eine Installation, die noch das JCR nutzt, muss zuerst mit 9.1.x migrieren: ProjectForge verweigert den Start, wenn das JCR nicht migrierte Dateien enthält. JCR-Backup und Migration wurden von der Systemseite entfernt, projectforge.jcr.maxDefaultFileSize heißt jetzt projectforge.files.maxDefaultFileSize (der alte Schlüssel wird weiterhin gelesen, mit einer Warnung beim Start, bis er umbenannt ist; entfallene JCR-Properties werden ebenfalls gemeldet).
-
Projekte: Der Status ist Akquise, aktiv, pausiert oder beendet (oder nicht gesetzt). Bestehende Projekte wurden umgestellt: Entwicklungsphase, produktiv und Wartung wurden zu aktiv, vorübergehend nicht aktiv zu pausiert. Die Historie zeigt weiterhin die früheren Werte.
-
Die Seite Systemkonfiguration bietet für Administratoren jetzt auch den Editor für projectforge.properties und den Vergleich mit den Backups, wie die Seite System.
-
Benutzermenü: "Mein Menü gestalten" steht vor "Mein Zugang".
-
Rechnungslisten: eine als bezahlt markierte Rechnung konnte nach einer Massenänderung im Filter "unbezahlt" (und in dessen Summen) bleiben, auch nach einem Refresh der Caches.
-
Benachrichtigungsregeln: Ein Empfänger erhält pro Regel und Tag höchstens eine E-Mail und eine SMS, auch wenn eine Regel mehrere Benachrichtigungen erzeugt hat. Am nächsten Tag wird erneut erinnert. Tests sind nicht begrenzt.
-
Lange Listen (Aufträge, Rechnungen, Zeitberichte, Buchungssätze, Schwachstellen): Eine Suche konnte nach gleichzeitigen oder direkt in der Datenbank gemachten Änderungen ein veraltetes, z. B. leeres Ergebnis zeigen. Ein Neuladen der Seite zeigt jetzt immer das aktuelle Ergebnis.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.1: neuer Dateispeicher, Chat, weitere Seiten migriert, letztes Release mit JCR und Java 17
2026-10-28, Tag 9.1.0-RELEASE QuellcodeJar (GitHub)Jar (SourceForge)Docker
SHA-256 von projectforge-application-9.1.0.jar: 4a44437a42a8bdfaeaef8ca915d4edd0635b16cd4a5a83bcb53f5854fe31e743
-
Letztes Release mit JCR und Java 17: das JCR mit 9.1.x migrieren, bevor auf 9.2+ aktualisiert wird
-
Neuer Dateispeicher in der Datenbank statt des JCR
-
Chat: Räume, Direktnachrichten, vertrauliche Gespräche, Dateien, Avatare, Datentransfer-Chats
-
Deckungsbeitrag je Auftrag und Strukturelement, Forecast und Kunden-Assistent
-
Security-Härtung: strengere Zugriffsprüfungen, CSP, CSRF für jede Sitzung,
config.xmldurch Konfigurationsparameter ersetzt -
Weitere Seiten migriert: Benutzer, Adressen, Urlaub, Mitarbeiter, Banking, Umfragen, Verträge und mehr
Überblick
-
JCR und Java 17: 9.1.x ist das letzte Release, das das JCR unterstützt und mit Java 17 läuft. Die Dateien mit 9.1.x migrieren, bevor auf 9.2 oder neuer aktualisiert wird, die Java 21 voraussetzen (das Docker-Image basiert bereits darauf).
-
Dateispeicher: mit
projectforge.files.store=dbliegen alle Dateien in der Datenbank (Schemapf_files), Datentransfer-Dateien im Dateisystem, komprimiert und optional verschlüsselt; die JCR-Dateien werden im Hintergrund kopiert und über Größe und Prüfsumme verifiziert, mit Bericht. Backups: ein Haupt-Dump plus ein Dump der Dateien. -
Chat: Räume und Direktnachrichten mit Formatierung, Dateien, Threads, Erwähnungen, Zitaten, Suche, Avatare, Ende-zu-Ende-verschlüsselte vertrauliche Gespräche und ein Chat in jedem Datentransfer-Bereich.
-
Statistik: Deckungsbeitrag je Auftrag und Strukturelement mit Bubble-Chart, schnelleres Forecast und Deckungsbeitrag, anordenbare Diagramm-Kacheln, Stichtag für den Forecast, Liquiditätsvorschau mit frei wählbarer Tageszahl.
-
Kunden und Projekte: Kunden-Assistent, Projekte unabhängig von Kostenträgern mit konfigurierbaren Nummernkreisen, Projektkontakte statt fester Rollen, Projektgruppen, Auftragszugriff für Projektmanager je Kunde, Kundengruppe oder Geschäftsbereich, neues Benutzerrecht Kunden.
-
Zeitberichte und Urlaub: mehrere Tage auf einmal buchen, Ad-hoc-Buchungen, keine Überlappungen auf derselben Kost2, Urlaub wird automatisch als Zeitbericht gebucht, Verfügbarkeitseinträge, Team-Urlaubskalender.
-
Auf die neue Oberfläche migriert: Benutzer, Team-Kalender, Adressen und Kampagnen, Urlaubsanträge und -konto, Mitarbeiter, Skripte, Umfragen, Verträge, Banking, Besucherbuch, Memos, Merlin-Vorlagen, Mein Konto und mehr; die frühere React-Oberfläche ist entfernt.
-
Benachrichtigungen und Betrieb: Regeln benachrichtigen in der App, per Mail und SMS, ein System-Dashboard mit Scheduler und Caches, ein Admin-Log-Viewer und ein Editor für
projectforge.properties;config.xmlist durch Konfigurationsparameter ersetzt. -
Security: strengere Zugriffsprüfungen, Content Security Policy, CSRF-Prüfung für jede ändernde Anfrage, Änderungen nur per POST, Brute-Force-Schutz beim Passwortwechsel, zweiter Faktor auf mehr Seiten.
-
Suche und Bedienung: Suche ignoriert Akzente und Umlaut-Schreibweisen, Auswahlfelder ohne inaktive Einträge und mit Namenstreffern zuerst, eine deutsche Version der Website.
Alle Änderungen
ProjectForge 9.1 fasst alle 9.0.x-Builds seit 9.0.0 zusammen: ein Dateispeicher in der Datenbank statt des JCR, ein Chat, viele auf die neue Oberfläche migrierte Seiten, Deckungsbeiträge je Auftrag und Strukturelement, Benachrichtigungen, ein System-Dashboard und viel Security-Härtung.
Letztes Release mit JCR und Java 17 - 9.1.x ist die letzte Linie, die mit Java 17 läuft und das JCR (Apache Oak) unterstützt. Releases ab 9.2 haben kein JCR mehr, die Dateien liegen in der Datenbank und im Dateisystem. Wer noch das JCR nutzt, migriert zuerst mit 9.1.x (projectforge.files.store=db, Bericht prüfen), bevor auf 9.2 oder neuer aktualisiert wird. Siehe Administrationshandbuch, „Dateien aus dem JCR übernehmen“.
Vor dem Update - Datenbank sichern (und das JCR, falls es noch genutzt wird); das Schema wird beim ersten Start automatisch migriert.
-
9.1.x ist das letzte Release, das mit Java 17 läuft und das JCR (Apache Oak) unterstützt. Ab 9.2 gibt es kein JCR mehr und Java 21 ist erforderlich. Installationen, die noch das JCR nutzen, müssen ihre Dateien zuerst mit 9.1.x migrieren (Administrationshandbuch, „Dateien aus dem JCR übernehmen“); ein JCR-Backup-ZIP lässt sich von späteren Releases nicht importieren.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.0.19 veröffentlicht
2026-10-28, Tag 9.0.19-RELEASE Nur Quellcode
-
Chat: vollständiger Emoji-Katalog, verschlüsselter Chat aus der Chatliste, Lesebestätigung, Einstellungen für Signale
-
Forecast: abgeschlossene, noch nicht fakturierte Aufträge wieder aufgeführt
-
Deckungsbeitrags-Bubbles: andere Projekte ignorieren den Projektfilter
Überblick
-
Chat: der gesamte Emoji-Katalog mit Suche für Reaktionen und Nachrichten, Nachrichten und Raumbeschreibungen nutzen denselben Rich-Text-Editor (Tabellen, Code, Emojis), ein blinkendes Sirenen-Emoji.
-
Chat: ein angebotenes vertrauliches Gespräch erreicht den Empfänger auf jeder Seite mit Ton, blinkendem Tab-Titel und Browser-Benachrichtigung; ein Button in der Chatliste startet einen verschlüsselten Chat, ein Zahnrad stellt Ton und Benachrichtigungen ein und zeigt ein Protokoll der letzten Signale.
-
Chat: "Gelesen" mit Avatar unter der neuesten gelesenen Nachricht einer Direktnachricht, die Suche bietet auch Benutzer ohne bisherige Direktnachricht an, Chats von Datentransferbereichen tragen eine Pille zum Bereich, das Aktionsmenü überdeckt die Trennlinie nicht mehr.
-
Forecast: abgeschlossene, noch nicht vollständig fakturierte Aufträge erscheinen wieder in der Statistik und im Excel-Export.
-
Deckungsbeitrags-Bubbles: die anonymen anderen Projekte ignorieren den Projektfilter.
-
Datentransfer: persönliche Boxen stehen immer ganz oben, auch bei der Suche nach einem Benutzer.
Alle Änderungen
-
Chat: Zahnrad in der Chatliste für Ton und Browser-Benachrichtigungen, mit einem Protokoll der letzten Signale (ob der Browser geklingelt hat, wann und warum).
-
Chat: In einer Direktnachricht steht unter der neuesten eigenen Nachricht, die das Gegenüber gelesen hat, "Gelesen" mit dessen Avatar.
-
Chat: Button "Verschlüsselter Chat" in der Chatliste, um durch Auswahl einer Person ein Ende-zu-Ende-verschlüsseltes Gespräch zu starten.
-
Chat: Chats von Datentransferbereichen sind in der Liste und im Titel mit der Pille "Datentransfer" gekennzeichnet, die zum Bereich führt.
-
Chat: Die Suche bietet auch Benutzer ohne bisherige Direktnachricht an; ein Klick startet die Unterhaltung.
-
Chat: der gesamte Emoji-Katalog mit Suche und Kategorien („Weitere Emojis“), erst beim Öffnen geladen, für Reaktionen und über einen neuen Button in der Formatierungsleiste für Nachrichten; das Sirenen-Emoji blinkt, neue Emojis :siren-blue: und :siren-red:.
-
Chat: Ein angebotenes vertrauliches Gespräch erreicht den Empfänger jetzt auf jeder Seite, auch in einem Tab im Hintergrund: ein Ton (abschaltbar), ein blinkender Tab-Titel, ein Punkt am Tab-Symbol und, falls erlaubt, eine Browser-Benachrichtigung.
-
Chat: Nachrichten und Raumbeschreibungen nutzen denselben Rich-Text-Editor. Nachrichten können Tabellen enthalten, Raumbeschreibungen Code und Emojis. Die erste Zeile einer Raumbeschreibung wird als Teaser angezeigt, der Rest klappt aus.
-
Datentransfer: Persönliche Boxen stehen immer ganz oben in der Liste, auch bei der Suche nach einem Benutzer.
-
Deckungsbeitrags-Bubbles: Die anonymen anderen Projekte ignorieren jetzt den Projektfilter (Business-Unit- und Kunden-Filter gelten weiter) und erscheinen daher auch bei gefiltertem Projekt.
-
Chat: Das Aktionsmenü einer Nachricht überdeckt nicht mehr die Trennlinie darüber.
-
Forecast: Abgeschlossene, noch nicht vollständig fakturierte Aufträge erscheinen wieder in der Statistik und im Excel-Export, mit ihrem offenen Betrag im aktuellen (bzw. Folgemonat).
ProjectForge 9.0.18 veröffentlicht
2026-10-27, Tag 9.0.18-RELEASE Nur Quellcode
-
Chat: Vertrauliche Gespräche, Suche in allen Nachrichten, kompaktes Layout mit Sprechblasen, Zähler für Ungelesenes in der oberen Leiste
-
Liquiditätsvorschau: Anzahl der Tage frei wählbar
-
Suche: Geschlossene Strukturelemente nicht mehr in der Menü-Schnellsuche
Überblick
-
Chat: Aus der vertraulichen Nachricht in einer Direktnachricht wird ein vertrauliches Gespräch, Ende-zu-Ende-verschlüsselt und nie auf dem Server gespeichert, bis eine Seite es beendet; der Fingerabdruck deckt beide Schlüssel ab. Unterhaltungen sind kompakter, mit Sprechblasen, gruppierten Nachrichten und einem Trenner pro Tag.
-
Chat: Die Suche der Chatseite findet auch Nachrichten in allen lesbaren Unterhaltungen, mit Vorschau des neuesten Treffers; ein Klick springt zur Nachricht. Eine Sprechblase in der oberen Leiste führt zum Chat und zeigt die ungelesenen Nachrichten, ebenso der Menüeintrag.
-
Liquiditätsvorschau: Die Anzahl der Tage kann frei eingegeben werden (1 bis 600), die üblichen Zeiträume bleiben als Schnellwahl.
-
Suche: Geschlossene Strukturelemente werden in der Menü-Schnellsuche nicht mehr gefunden; die Detailsuche findet sie weiterhin, durchgestrichen.
Alle Änderungen
-
Chat: Die Suche der Chatseite findet auch Nachrichten in allen lesbaren Unterhaltungen, jeweils mit einer Vorschau des neuesten Treffers; ein Klick springt zur Nachricht, auch in einem Thread.
-
Chat: Eine Sprechblase in der oberen Leiste führt zum Chat, ein Zähler zeigt dort und am Menüeintrag die ungelesenen Nachrichten.
-
Chat: Kompaktere Unterhaltungen mit Sprechblasen (eigene Nachrichten rechts), aufeinanderfolgende Nachrichten derselben Person gruppiert und ein Trenner pro Tag.
-
Liquiditätsvorschau: Die Anzahl der Tage kann frei eingegeben werden (1 bis 600), die üblichen Zeiträume bleiben als Schnellwahl.
-
Suche: Geschlossene Strukturelemente werden in der Menü-Schnellsuche nicht mehr gefunden. Die Detailsuche findet sie weiterhin und zeigt sie durchgestrichen, ebenso der Strukturbaum, die Pfade und die Listen.
-
Chat: Aus der vertraulichen Nachricht in einer Direktnachricht wird ein vertrauliches Gespräch. Beide Seiten schreiben sich hin und her, Ende-zu-Ende-verschlüsselt und nie auf dem Server gespeichert, bis eine Seite es beendet. Der Fingerabdruck deckt jetzt beide Schlüssel ab, eine gefälschte Nachricht fällt so als Abweichung auf.
ProjectForge 9.0.17 veröffentlicht
2026-10-26, Tag 9.0.17-RELEASE Nur Quellcode
-
Chat im Datentransfer: Jeder Bereich ist ein Chatraum, Direktnachrichten aus persönlichen Boxen
-
Avatare im Chat und im Benutzermenü
-
Chat: Mitgliederliste, Zitate und Suche
-
Projektliste: Excel-Export, Kunde in der Projektauswahl
-
Nicht erreichbarer Mailserver bremst das Speichern von Aufträgen nicht mehr aus
Überblick
-
Chat im Datentransfer: Jeder Datentransferbereich ist ein Chatraum für alle mit Zugriff darauf (die Admins moderieren), im Chat verschickte Dateien landen im Bereich; Externe sehen nur die Dateien. Die persönliche Box einer anderen Person öffnet die Direktnachricht mit ihr. Die Buttons Chat und Direktnachricht sowie die Chatseite zeigen die ungelesenen Nachrichten.
-
Chat: Jede Unterhaltung listet ihre Mitglieder mit ihren Avataren auf; Nachrichten können eine andere Nachricht zitieren; ein Suchfeld grenzt die Direktnachrichten und die Räume ein; die Raumseite zeigt die formatierte Beschreibung des Raums und wird direkt dort bearbeitet.
-
Avatare: Unter Mein Account kann ein eigenes Bild hochgeladen werden, quadratisch zugeschnitten in einem neuen Bild-Editor (auch für die Bilder von Adressen); es erscheint im Chat und im Benutzermenü bei allen, die eine Gruppe gemeinsam haben. Administratoren können jeden Avatar ändern oder entfernen.
-
Projekte: Excel-Export der Projektliste; Projektauswahl und Projektfilter zeigen den Kunden jedes Projekts; die erste vorgeschlagene lokale Projektnummer lässt sich je Nummernkreis festlegen.
-
Benachrichtigungen: Die Glocke zeigt die archivierten Einträge der letzten 90 Tage, so lässt sich eine versehentlich bestätigte Benachrichtigung weiterhin öffnen.
-
Bedienung: Gruppenfelder zeigen beim Überfahren die Mitglieder einer Gruppe, Kunden- und Projektgruppen in Listenfiltern, was sie umfassen; gelöschte oder deaktivierte User, Gruppen und Mitarbeiter:innen werden an weiteren Stellen durchgestrichen; User werden auch über ihren Rufnamen gefunden; ein gewähltes Strukturelement wird über ein eigenes (x) entfernt; in einer Liste mit mehr als 100 Einträgen wählt ein Button die ersten 100 für eine Massenänderung aus.
-
Behoben: Bei nicht erreichbarem Mailserver wartete das Speichern eines Auftrags einmal pro Empfänger:in der Benachrichtigung und jede Benachrichtigungsmail auf das Timeout; das Gateway liefert die Abos von Teamkalendern und der Kalenderwochen aus; der Projekt-Assistent bot nach „Weiteres Element einrichten“ keine Kost2-Arten mehr an.
Alle Änderungen
-
Adressen: Ein kleiner Bildeditor schneidet aus einem ausgewählten Bild, auch dem bereits angezeigten, vor dem Hochladen einen quadratischen Ausschnitt (verschieben und zoomen).
-
Chat im Datentransfer
-
Jeder Datentransferbereich ist ein Chatraum für alle mit Zugriff darauf (die Admins moderieren): Der Button Chat am Bereich öffnet ihn, im Chat verschickte Dateien landen im Bereich. Externe Personen sehen den Chat nicht, nur die Dateien mit ihren Beschreibungen; der Chat eines Bereichs mit externem Zugriff weist darauf hin. Das Ausblenden einer Nachricht blendet ihre Datei im Bereich nicht aus, das Löschen der Nachricht löscht sie.
-
Die persönliche Box einer anderen Person hat den Button Direktnachricht, der die Direktnachricht mit ihr öffnet; die Dateien landen in ihrer persönlichen Box.
-
Die Chatseite listet die Chats der Datentransferbereiche mit Nachrichten, mit der Zahl der ungelesenen.
-
Die Buttons Chat und Direktnachricht zeigen die Zahl der ungelesenen Nachrichten. Im Chat zeigt ein Badge oben rechts die noch nicht gesehenen ungelesenen Nachrichten; ein Klick springt zur nächsten, auch in einen Thread.
-
-
Chat: Jede Unterhaltung, auch die eines Datentransferbereichs, listet ihre Mitglieder mit ihren Avataren auf (Symbol oben rechts).
-
Nummernkreise: Die erste vorgeschlagene lokale Projektnummer lässt sich je Nummernkreis in der Buchhaltungskonfiguration festlegen, z. B. 5..01 statt 5..00; niedrigere Nummern können weiterhin eingegeben werden.
-
Gruppenfelder (z. B. die Zugriffslisten von Kalendern, Adressbüchern und Umfragen): Beim Überfahren einer Gruppe werden ihre Mitglieder angezeigt, sofern die Gruppe sichtbar ist.
-
Projektliste: Excel-Export der gefilterten Projekte mit allen Feldern.
-
Avatare: Unter Mein Account kann ein eigenes Bild hochgeladen werden (im Bild-Editor quadratisch zugeschnitten); es erscheint im Chat und im Benutzermenü bei allen Usern, die mindestens eine Gruppe gemeinsam haben. Administratoren können den Avatar jedes Users ändern oder entfernen. Ein Klick auf den eigenen Avatar im Benutzermenü öffnet ihn unter Mein Account.
-
Chat
-
Die Raumseite zeigt die Beschreibung des Raums, jetzt als formatierten Text; wer den Raum angelegt hat und die Moderation bearbeiten ihn direkt dort.
-
Ein Suchfeld auf der Chatseite grenzt die Direktnachrichten und die Räume ein.
-
Nachrichten können eine andere Nachricht der Unterhaltung zitieren: Das Zitat zeigt, von wem sie ist, und den Anfang ihres Texts; ein Klick zeigt die Nachricht.
-
Menüsuche: Die gefundenen Menüeinträge stehen wieder an erster Stelle, die gefundenen Personen zum Chatten folgen danach.
-
-
Listenfilter: Kunden- und Projektgruppen zeigen im Tooltip, welche Kunden bzw. Projekte sie umfassen.
-
Gelöschte oder deaktivierte User, Gruppen und Mitarbeiter:innen werden jetzt an weiteren Stellen durchgestrichen: in Listen mit mehreren Namen (Gruppenmitglieder, Zugriffslisten, Ansprechpersonen, Vertretungen), im Strukturbaum, im Chat, in der Historie, bei Anhängen, im Urlaubskonto, bei Buchungsfreigaben, in der HR-Ansicht, in Abwesenheitsdiagrammen und im Benachrichtigungsprotokoll.
-
Massenänderung
-
Im Auswahlmodus einer Liste mit mehr als 100 Einträgen wählt ein Button die ersten 100 davon aus, die höchste Anzahl, die eine Massenänderung auf einmal ändert.
-
-
Benachrichtigungen: Die Glocke hat eine Schaltfläche „Archivierte Einträge“, die die bestätigten oder erledigten Benachrichtigungen der letzten 90 Tage anzeigt, so kann eine versehentlich bestätigte Benachrichtigung weiterhin gelesen und geöffnet werden.
-
Projektauswahl der Bearbeitungsseiten und Projektfilter der Listen und Statistiken: Hinter jedem Projekt steht der Kunde in Klammern.
-
Strukturelement-Auswahl: Ein gewähltes Strukturelement wird über ein eigenes (x) entfernt (nicht bei Pflichtfeldern), das Häuschen öffnet den Baum.
-
User-Auswahl: User werden auch über ihren Rufnamen gefunden.
-
Gateway: Abos von Teamkalendern und der Kalenderwochen werden ausgeliefert, Feiertage in der Sprache des Users; das Token in der Abo-URL wird wie in der Hauptinstanz geprüft.
-
Benachrichtigungen: Ist der Mailserver nicht erreichbar, wird eine fehlgeschlagene Benachrichtigungsmail nur noch einmal mit Stacktrace geloggt und ihre Ursache im Zustellstatus angezeigt; die weiteren Mails des Laufs warten auf den nächsten Lauf, statt jeweils auf das Timeout.
-
Aufträge: Ist der Mailserver nicht erreichbar, wartet das Speichern nur noch einmal auf ihn statt einmal pro Empfänger:in der Benachrichtigung.
-
Projekt-Assistent: Nach „Weiteres Element einrichten“ bot der Projekt-Schritt keine Kost2-Arten mehr an, das nächste Projekt musste sie erst nachträglich im Projekt-Formular bekommen.
ProjectForge 9.0.16 veröffentlicht
2026-10-26, Tag 9.0.16-RELEASE Nur Quellcode
-
Chat: Räume, Direktnachrichten, Dateien, Threads, Erwähnungen und vertrauliche Nachrichten
-
Suche ignoriert Akzente und Umlaut-Schreibweisen
-
Projektauswahl findet Projekte über Nummer und Kunde
-
Auftrags- und Rechnungscache aktualisieren sich nicht mehr gegenseitig endlos
Überblick
-
Chat (Menü Allgemein → Chat): Räume mit ausgewählten Personen und Gruppen sowie Direktnachrichten an alle Personen, lesbar nur für die Teilnehmenden, auch nicht für Administratoren. Nachrichten mit Formatierung, Dateien jeder Art (abgelegt im Datentransfer), Emoji-Reaktionen, Threads zum Folgen und als ungelesen Markieren sowie @-Erwähnungen mit Benachrichtigung in der App und per Mail. Vertrauliche Nachrichten in Direktnachrichten sind Ende-zu-Ende-verschlüsselt und werden vom Server nie gespeichert. Hinter einem Reverse Proxy braucht der Chat eine ungepufferte Verbindung, siehe Administrationshandbuch.
-
Suche: Suche und Auswahlfelder ignorieren Akzente und Umlaut-Schreibweisen („Mueller“ findet „Müller“, „Strasse“ findet „Straße“), vollständig nach der nächsten nächtlichen Neuindizierung; deaktivierte Personen werden in der Suche im Hauptmenü nicht mehr gefunden.
-
Administration: Das Backup-Skript des Administrationshandbuchs komprimiert den Dump der Dateien auf etwa die halbe Größe.
-
Behoben: Auftrags- und Rechnungscache aktualisierten sich gegenseitig endlos, wenn eine Rechnung auf eine gelöschte Auftragsposition verwies; Projekte werden über ihre Nummer und den Namen ihres Kunden gefunden; in der neuen Oberfläche gespeicherte Debitorenrechnungen werden sofort über ihren Kunden gefunden; der Zeitberichtsfilter für Strukturunterelemente lässt sich abschalten; Postleitzahlen wie „D-34286“ werden nicht mehr als JIRA-Issues verlinkt; das Log eines laufenden Scripts wird wieder angezeigt.
Alle Änderungen
-
Chat: Vertrauliche Nachrichten in Direktnachrichten (z. B. für ein Passwort), Ende-zu-Ende-verschlüsselt in beiden Browsern, live weitergeleitet und vom Server nie gespeichert, für die empfangende Person nur einmal angezeigt.
-
Chat
-
Chaträume (Menü Allgemein → Chat): Alle können einen Raum anlegen und die Teilnehmenden wählen, Personen und Gruppen; wer später in eine Gruppe kommt, nimmt sofort teil. Wer den Raum angelegt hat und die Moderation bearbeiten und löschen ihn. Räume sehen nur ihre Teilnehmenden, auch Administratoren nicht.
-
Direktnachrichten: Allen, die in der Personenauswahl erscheinen, kann privat geschrieben werden, über die Chatseite, bei einer in der Menüsuche gefundenen Person (Chat starten / Datei senden; für alle, mit den Personen der Personenauswahl) oder per Klick auf eine Person in jeder Unterhaltung; wer eine Nachricht bekommen hat, kann antworten. Die Unterhaltung lesen nur die beiden, auch Administratoren nicht.
-
Nachrichten mit Formatierung (Textfarben, Listen, Links, Code im Text und Codeblöcke mit mehreren Zeilen), Dateien jeder Art (Einfügen, Drag & Drop oder Dateiauswahl; Bilder als Vorschau), Emoji-Reaktionen und Antworten als eigene Threads, denen man folgen kann. Die Dateien liegen im Datentransfer: in einem Bereich pro Raum, den dessen Teilnehmende im Datentransfer sehen und in dem die Dateien so lange bleiben, wie im Raum eingestellt; Dateien von Direktnachrichten landen in der persönlichen Box der empfangenden Person. Ohne Datentransfer-Plugin werden keine Dateien ausgetauscht. Eigene Nachrichten lassen sich bearbeiten und löschen, die Moderation blendet Nachrichten mit Begründung aus und sieht die Historie einer Nachricht.
-
Ein @ schlägt die Teilnehmenden des Raums vor; die erwähnte Person wird sofort benachrichtigt, in der App und per Mail. Neue Nachrichten werden einmal pro Raum gemeldet, bis sie gelesen sind, per Mail nur, wenn sie nicht innerhalb einer Stunde in der App gesehen wurden; Räume lassen sich stummschalten.
-
Neue Nachrichten erscheinen ohne Neuladen (Server-Sent Events, mit Abfragen als Rückfall). Hinter einem Reverse Proxy braucht der Chat eine ungepufferte Verbindung, siehe Administrationshandbuch.
-
-
Chat: Eine Datei einer Nachricht lässt sich neben dem Herunterladen auch in ihrem Datentransferbereich öffnen.
-
Chat: Eine Nachricht lässt sich als ungelesen markieren, Threads mit ungelesenen Antworten sind gekennzeichnet, und im Thread zeigt eine Linie die erste ungelesene Antwort.
-
Suche und Auswahlfelder ignorieren Akzente und Umlaut-Schreibweisen: „Andre“ findet „André“, „Mueller“ und „Muller“ finden „Müller“, „Strasse“ findet „Straße“ und umgekehrt. Gilt für Einträge, die nach dem Update indiziert wurden, also vollständig nach der nächsten nächtlichen Neuindizierung.
-
Admin-Handbuch: Das Backup-Skript komprimiert den Dump der Dateien (etwa halbe Größe), weil pg_dump deren Inhalte hex-kodiert schreibt.
-
Debitorenrechnungen: In der neuen Oberfläche gespeicherte Rechnungen wurden bis zum nächsten Neuaufbau des Suchindex nicht über den Namen ihres Kunden gefunden.
-
JIRA-Links: Ein Issue-Schlüssel braucht mindestens zwei führende Großbuchstaben, sodass eine Postleitzahl wie „D-34286“ in einem Text nicht mehr als Issue verlinkt wird.
-
Projektauswahl: Projekte werden auch über ihre Nummer (z. B. 7.002) und den Namen ihres Kunden gefunden.
-
Scripte: Das Anzeigen des Logs eines laufenden Scripts konnte mit einem Fehler abbrechen.
-
Zeitberichte: Der Filter „inkl. aller Strukturunterelemente“ ließ sich nicht abschalten. Er ist ersetzt durch den Filter „ohne Strukturunterelemente“, standardmäßig deaktiviert.
-
Der Auftrags- und der Rechnungscache aktualisieren sich nicht mehr gegenseitig endlos (z. B. bei den täglichen Auftragsbuch-Snapshots), wenn eine Rechnung auf eine gelöschte Auftragsposition verweist.
-
Suche im Hauptmenü: Deaktivierte Personen werden nicht mehr gefunden (in der Personenliste weiterhin).
ProjectForge 9.0.15 veröffentlicht
2026-10-25, Tag 9.0.15-RELEASE Nur Quellcode
-
Ad-hoc-Buchungen: Zeitbuchungen ohne Gruppenzuordnung freigeben oder vorschlagen
-
Benachrichtigungen: Zustellung per SMS, fällige Kreditorenrechnungen, Variablen mit Beispielen
-
Zeitbericht-Formular: zuletzt verwendete Einträge mit Verbrauch, sortier- und filterbar
-
Kundenassistent verwendet vorhandene Strukturelemente
-
Strukturbaum: verlorene und unvollständige Elemente nach Neuladen im Hintergrund behoben
-
Passwort vergessen: Rücksetz-Mail gegen Mail-Bombing begrenzt
Überblick
-
Ad-hoc-Buchungen: Wer auf einem Strukturelement fremde Zeitberichte bearbeiten darf, gibt Kolleg:innen für einen Zeitraum das Buchen eigener Zeitberichte frei, optional nur auf einige Kost2; die Personen sehen nur die freigegebenen Strukturelemente. Mitarbeitende ohne dieses Recht können eine solche Buchung vorschlagen, die Projektleitung übernimmt die Zeitberichte anschließend (erinnert durch eine neue Benachrichtigungsregel).
-
Benachrichtigungen: Zustellungsschritte per SMS; neue Regel „Fällige Kreditorenrechnungen“; der Regel-Editor listet die Variablen für Betreff und Text mit Beispielwerten und Kopier-Button, die Vorschau zeigt die Texte mit Beispielwerten.
-
Kreditorenrechnungen: bereits 2 Werktage vor Fälligkeit als überfällig markiert.
-
Zeitbericht-Formular: Die zuletzt verwendeten Einträge zeigen den Verbrauch ihres Budgets und lassen sich pro Spalte sortieren, filtern und anordnen (pro Benutzer gespeichert); der Tooltip des Verbrauchsbalkens zeigt Budget, gebuchte und restliche Personentage.
-
Kundenassistent: Vorhandene Strukturelemente des Kunden und des Projekts können statt neuer verwendet werden, aus dem Baum gewählt oder über den gleichen Titel gefunden.
-
Auftragsstatistik: Die Bubble-Größe des Deckungsbeitrag-Diagramms zeigt den DB1; Titel lassen sich einblenden.
-
Behoben: Während des Neuladens im Hintergrund angelegte oder verschobene Strukturelemente konnten aus dem Strukturbaum verschwinden, nach einer Änderung fehlte die/der Verantwortliche; eine ungültige Suchsyntax zeigt einen Hinweis statt einer leeren Liste; die Infos eines Strukturelements erhalten nur Nutzer, die es sehen dürfen; die Rücksetz-Mail bei „Passwort vergessen“ ist pro Benutzer:in, pro Client und insgesamt begrenzt und kann nicht mehr beliebig oft angefordert werden.
Alle Änderungen
-
Ad-hoc-Buchungen
-
Wer auf einem Strukturelement fremde Zeitberichte bearbeiten darf (z. B. Projektleitung, Finanzen), kann Kolleg:innen für einen Zeitraum das Buchen eigener Zeitberichte freigeben, ohne Gruppenzuordnung: mehreren Personen auf einmal, auf dem Strukturelement und beliebigen Unterelementen, jeweils optional nur auf einige ihrer Kost2. Die Freigabe gilt sofort, jede Person bekommt eine Mail mit den Links zum Buchen.
-
Im Strukturbaum sehen die Personen nur die freigegebenen Strukturelemente und die Titel der übergeordneten Elemente: keine anderen Strukturelemente, keinen Verbrauch, keine fremden Zeitberichte und keine Statistiken. Nach Ablauf oder Widerruf bleiben die eigenen Zeitberichte lesbar.
-
Im Strukturbaum markiert ein Badge die Strukturelemente mit Ad-hoc-Buchungen; sein Tooltip nennt die Personen und ihre Zeiträume. Sichtbar nur für die, die auf dem Strukturelement freigeben dürfen.
-
Mitarbeitende ohne dieses Recht können eine solche Buchung auf den Strukturelementen vorschlagen, auf die sie selbst buchen, für höchstens 31 Tage: Die aushelfende Person bucht sofort, die Projektleitung übernimmt die Zeitberichte anschließend, unverändert oder auf ein anderes Strukturelement bzw. eine andere Kost2 (Zeitberichtsformular oder Massenänderung; Listenfilter „Nur zu übernehmende“). Bis dahin zählen sie wie alle anderen Zeitberichte. Die Projektleitung kann einen Vorschlag bestätigen, dann müssen spätere Buchungen nicht mehr übernommen werden.
-
Neue Benachrichtigungsregel „Zu übernehmende Zeitberichte“: erinnert die Projektleitung an noch zu übernehmende Zeitberichte (in der App und, wenn nicht bestätigt, per Mail, wie in der Regel eingestellt). Der Strukturbaum zeigt ihre Anzahl neben dem Badge.
-
-
Verbrauchsbalken (Strukturbaum, Strukturliste, Zeitbericht-Formular): Der Tooltip zeigt Budget, gebuchte und restliche Personentage als Rechnung, ein überbuchtes Budget in Rot.
-
Zeitbericht-Formular: Die zuletzt verwendeten Einträge zeigen den Verbrauch ihres Budgets, die Suche findet ihn auch.
-
Kreditorenrechnungen
-
Bereits 2 Werktage vor Fälligkeit als überfällig (rot) markiert, damit sie rechtzeitig bezahlt werden.
-
Neue Benachrichtigungsregel „Fällige Kreditorenrechnungen“: meldet den Empfängern der Regel unbezahlte Kreditorenrechnungen, die innerhalb einer einstellbaren Anzahl von Werktagen fällig sind (inkl. bis zu 90 Tage überfälliger).
-
-
Benachrichtigungen
-
Der Regel-Editor listet die für Betreff und Text verfügbaren Variablen auf (allgemeine und die des Regeltyps), jede mit einem Button zum Kopieren.
-
Zu jeder Variablen wird ein Beispielwert gezeigt, so ist z. B. erkennbar, wie eine Liste von Rechnungen aussieht; die Vorschau zeigt die Texte auch mit Beispielwerten.
-
-
Zeitbericht-Formular: Die Tabelle der zuletzt verwendeten Einträge lässt sich pro Spalte sortieren und filtern, ihre Spalten lassen sich verschieben, in der Breite ändern, fixieren und ausblenden; das Layout wird pro Benutzer gespeichert.
-
Benachrichtigungen: Zustellungsschritte per SMS an die Mobilfunknummer der Empfänger (sofern SMS konfiguriert ist), mit eigenem SMS-Text der Regel oder sonst Betreff und Link.
-
Kundenassistent: Vorhandene Strukturelemente des Kunden und des Projekts können statt neuer verwendet werden, aus dem Baum gewählt (der Titel darf abweichen, z. B. „ACME“ für „ACME Inc.“) oder automatisch über den gleichen Titel gefunden.
-
Auftragsstatistik, Deckungsbeitrag-Bubbles: Die Größe einer Bubble zeigt ihren DB1 statt ihrer Kosten. Der Schalter „Titel einblenden“ beschriftet die eigenen Bubbles mit Kurztitel und DB %; ausgeschaltet stehen die Namen nur im Tooltip.
-
Die Infos eines Strukturelements (Titel, Pfad, Projekt, Kunde, Verbrauch) wurden jedem eingeloggten Nutzer geliefert; jetzt nur noch an Nutzer, die das Strukturelement sehen dürfen.
-
Strukturbaum: Ein Strukturelement, das während des Neuladens des Baums im Hintergrund angelegt oder verschoben wurde, konnte bis zum nächsten Neuladen aus dem Baum verschwinden; darunter ließ sich dann kein Unterelement anlegen („Übergeordnetes Strukturelement wird benötigt, konnte aber nicht gefunden werden“).
-
Strukturbaum: Nach dem Ändern eines Strukturelements fehlte dessen Verantwortliche:r im Baum bis zum nächsten Neuladen.
-
Passwort vergessen: Die Rücksetz-Mail ist pro Benutzer:in, pro Client und insgesamt begrenzt und kann nicht mehr beliebig oft angefordert werden (Mail-Bombing, Ungültigmachen eines offenen Rücksetz-Links).
-
Listen: Ein Suchbegriff mit ungültiger Suchsyntax (z. B. „Projekt: Alpha“) zeigt jetzt einen Hinweis statt einer leeren Liste ohne Erklärung.
ProjectForge 9.0.14 veröffentlicht
2026-10-23, Tag 9.0.14-RELEASE Nur QuellcodeJar (SourceForge)
-
Deckungsbeitrag je Auftrag und Strukturelement, Bubble-Diagramm
-
Frühere React-Oberfläche entfernt
-
Sicherheit: CSRF-Prüfung für jede Sitzung, ändernde Anfragen nur noch als POST
-
Felder mit mehreren Einträgen: Einträge kopieren, einfügen und ziehen
-
Import der Eingangsrechnungen: Währungen und Exporte ohne Positionen korrigiert
Überblick
-
Deckungsbeitrag: Die Auftragsstatistik schlüsselt ihn nach Aufträgen und Strukturelementen auf (Baum mit Monatsdiagramm je Zeile) und zeigt ein Bubble-Diagramm aus Umsatz, DB % und Kosten je Projekt, Projektgruppe, Kunde oder Kundengruppe, in den Farben der Business Units.
-
Frühere React-Oberfläche entfernt: Alle ihre Seiten sind Teil der neuen Oberfläche, alte Links (
/react/...) führen dorthin. -
Sicherheit: Das CSRF-Token wird für jede ändernde Anfrage einer angemeldeten Sitzung geprüft; ändernde Anfragen (Filter, Vorlagen, Suchindex, Abmelden, Abbrechen einer Anmeldung) werden nur noch als POST angenommen; Historienkommentare erfordern Schreibrecht; npm-Abhängigkeiten aktualisiert.
-
Felder mit mehreren Einträgen: Einträge lassen sich markieren, kopieren, ausschneiden, einfügen und in ein anderes Feld derselben Art ziehen; Strg/Cmd+Z macht eine Änderung rückgängig.
-
Administration: Strukturbaum und -liste zeigen die Gruppen mit Zugriffsrechten auf ein Element; die Massenänderung von Zeitberichten schlüsselt Kost2 nach Kostenart um, ohne das Strukturelement zu wechseln.
-
Umfragen: Vorlagen haben den Status „Vorlage“ und keine Antwortfrist.
-
Behoben: Import der Eingangsrechnungen (Währungen, Perioden, Exporte ohne Positionen); Stornorechnungen bei den Positionen, die sie stornieren; die Auftrags-Bearbeitungsseite springt nicht mehr; das Protokoll der Massenänderung zeigt die geänderten Einträge wieder.
Alle Änderungen
-
Auftragsstatistik, Deckungsbeitrag: Bubble-Diagramm mit Umsatz, DB % und Kosten (Größe) je Projekt, Projektgruppe, Kunde oder Kundengruppe. Auf Wunsch werden zum Vergleich auch die übrigen Projekte der Auswahl (z. B. der ganzen Business Unit) anonym und ohne Namen angezeigt. Die Bubbles erscheinen in den Farben der Business Units, die bei den Business Units (Seite Kundengruppen) hinterlegt werden. Ein Schalter beschriftet stattdessen alle Bubbles mit ihrem Kurztitel (dem Namen der Gruppe, bei einem einzelnen Projekt mit dem Kurzbezeichner).
-
Felder mit mehreren Einträgen (Benutzer, Gruppen, Mitarbeitende, …): Einträge lassen sich mit der Maus aufziehend oder per Klick markieren, dann kopieren (Strg/Cmd+C) oder ausschneiden (Strg/Cmd+X) und mit Strg/Cmd+V in ein anderes Feld derselben Art einfügen oder dorthin ziehen. Strg/Cmd+Z macht eine Änderung des Felds rückgängig.
-
Strukturbaum und Strukturelementliste: Spalte mit den Gruppen, die Zugriffsrechte auf ein Element haben (nur für Administratoren). Beim Darüberfahren werden die Rechte jeder Gruppe angezeigt, ein Klick öffnet die Zugriffsrechte dieses Elements.
-
Massenänderung von Zeitberichten: Kost2 nach Kostenart umschlüsseln, ohne dass ein Zeitbericht sein Strukturelement wechselt, z. B. nach Verlinkung eines Projekts.
-
Auftragsstatistik: Deckungsbeitrag aufgeschlüsselt nach Aufträgen und nach Strukturelementen, als Baum mit Monatsdiagramm je Zeile. Die Werte sind kalkulatorisch aus den Rechnungspositionen und den Zeitberichten × Stundensatz; was sich nicht zuordnen lässt, bleibt als Rest beim Projekt.
-
Umfragen
-
Vorlagen haben keine Antwortfrist: Beim Speichern wird keine verlangt und keine gesetzt.
-
Vorlagen haben den Status „Vorlage“ statt „Laufend“, werden ohne Filter mit aufgelistet und mit einem Badge gekennzeichnet; der Statusfilter ersetzt den Filter „Vorlagen“.
-
-
Import von Eingangsrechnungen
-
Positionen einer Rechnung in unterschiedlichen Währungen werden zum Kurs des Rechnungsdatums in EUR umgerechnet, statt als EUR übernommen zu werden; ohne Kurs wird die Rechnung als fehlerhaft markiert.
-
Gespeicherte Rechnungen zwischen zwei Perioden des Exports (z. B. März bei einem Export von Januar und Juni) werden nicht mehr zum Löschen angeboten.
-
Export ohne Positionen: Die Zeilen einer Rechnung (eine je Buchungszeile) werden zu einer Rechnung mit dem Gesamtbetrag zusammengefasst, statt bei jedem Import als neue Rechnungen angeboten zu werden.
-
Export ohne Positionen: Die interne Notiz (Spalte „Interne Re.-Nr.“) wird nicht mehr an die Rechnungsnummer angehängt, die sich sonst bei jedem Import der beiden Dateien hin- und herändert.
-
-
Massenänderungen: Das Protokollfenster zeigt die geänderten Einträge wieder an.
-
Stornorechnungen werden bei den Auftragspositionen aufgeführt, die sie stornieren, direkt nach der stornierten Rechnung (z. B. 12345 und 12345-S), auch im Auftrags- und Forecast-Export. Im Auftrag sind beide durchgestrichen; zusammen zählen sie weiterhin 0 als fakturiert.
-
Auftragsbuch: Die Bearbeitungsseite springt beim Ändern eines Feldes nicht mehr.
-
Die frühere React-Oberfläche ist entfernt: Alle ihre Seiten sind Teil der neuen Oberfläche, und alte Links (
/react/...) führen dorthin.
-
Das CSRF-Token wird für jede ändernde Anfrage einer angemeldeten Browser-Sitzung geprüft, nicht mehr nur für Anfragen, die sich als neue Oberfläche ausweisen; das Abbrechen einer Anmeldung oder Passwort-Zurücksetzung wird nur noch als POST angenommen.
-
Einen Kommentar an einen Historieneintrag anzuhängen erfordert Schreibrecht auf das zugehörige Objekt und ist nur bei Objekten möglich, die Kommentare unterstützen (Benutzer, Gruppen).
-
npm-Sicherheitslücken in projectforge-next behoben: next 16.4.2, dompurify 3.4.17 und vitest 4.1.12.
-
Anfragen, die etwas ändern (Listen- und Kalenderfilter, Vorlagen, Suchindex, Abmelden), werden nur noch als POST angenommen; die GET-Varianten der früheren React-Oberfläche sind entfernt.
ProjectForge 9.0.13 veröffentlicht
2026-10-22, Tag 9.0.13-RELEASE Nur Quellcode
-
Banking migriert: Bankkonten, Kontoumsätze und deren Import
-
Besucherbuch, Memos, Merlin-Vorlagen und Jobmonitor migriert
-
Projektgruppen für Projektfilter, Forecast und Exporte
-
Import der Eingangsrechnungen: viele Korrekturen, schneller
-
Alte Links werden nur noch weitergeleitet, wo sie per Mail verschickt oder geteilt wurden
Überblick
-
Neue Oberfläche: Bankkonten, Kontoumsätze und deren Import (eine eigene Seite mit Vorschau der Unterschiede), Besucherbuch (schlägt bereits erfasste Besucher vor, Filter unvollständiger Besuche), Memos, Merlin-Word®-Vorlagen und der Jobmonitor migriert; die Sipgate-Aktionen sind ein Menü der System-Seite.
-
Projektgruppen: Projekte eines gemeinsamen Oberprojekts werden auf der Seite der Kundengruppen zu einer Gruppe zusammengefasst; die Projektfilter bieten die Gruppe wie ein einzelnes Projekt an, Forecast, Deckungsbeitrag und die Excel-Exporte zeigen eine Spalte Projektgruppe.
-
Import der Eingangsrechnungen: Überschreibt keine anderen Rechnungen desselben Kreditors mehr, behält Rechnungen mit überzähligen Positionen, übernimmt Zahldatum und Zahlbetrag aus dem Positions-Import, liest deutsche Steuersätze aus DATEV-Dateien korrekt und zeigt, was sich in einer geänderten Zeile geändert hat; Abgleich und Vorschau großer Dateien sind deutlich schneller, und die Seite bleibt nach dem Übernehmen offen.
-
Konfiguration: Parameter mit JSON-Werten lassen sich als Text bearbeiten und mit jeder früheren Version vergleichen.
-
Alte Links: Links auf Seiten der früheren Oberflächen werden nur noch weitergeleitet, wenn sie per Mail verschickt oder geteilt wurden (Aufträge, To-dos, Urlaub, Datentransfer, Umfragen, Passwortänderung); andere Lesezeichen sollten erneuert werden. Der 2FA-Dialog der alten Oberfläche ist entfernt.
-
Verbessert: Listenfilter mit Checkliste bieten „Aus allen wählen“; Projektassistent mit Tabs und einer Übersicht, was eingerichtet wird; Massenänderungen verlinken wieder ihr Protokoll; deaktivierte Benutzer:innen durchgestrichen.
-
Behoben: Anrufe von einem externen Telefon über sipgate; Projekt- und Kostenträgernummern von Nummernkreisen ohne konfigurierte Segmente; Strukturelement-Felder zeigen ein umbenanntes oder verschobenes Element sofort; Beträge mit zwei Nachkommastellen und Währung.
Alle Änderungen
-
Konfigurationsparameter mit JSON-Werten
-
Umschalter zwischen Formular und JSON-Text, der auch direkt bearbeitet werden kann.
-
Versionen vergleichen: gespeicherter, bearbeiteter und jeder frühere Wert aus der Historie, zeilenweise.
-
Kundengruppen und Business Units: ebenfalls Versionen vergleichen (im gespeicherten Format, mit IDs).
-
JSON-Werte werden kompakt gespeichert; Werte bis 100.000 Zeichen lassen das Speichern nicht mehr an der Historie scheitern.
-
-
Projektgruppen: Zusammengehörende Projekte eines gemeinsamen Oberprojekts lassen sich auf der Seite der Kundengruppen zu einer Gruppe zusammenfassen. Die Projektfilter von Auftragsbuch, Rechnungen, Projekten, Kost2, Zeitberichten und Auftragsstatistik bieten die Gruppe wie ein einzelnes Projekt an; Forecast, Deckungsbeitrag und die Excel-Exporte von Forecast, Auftragsbuch und Rechnungsliste zeigen eine Spalte Projektgruppe, sobald eines ihrer Projekte zu einer Gruppe gehört.
-
Besucherbuch: Beim Erfassen eines neuen Besuchers schlägt der Name die bereits erfassten Besucher vor; mit der Auswahl wird der Besuch dort eingetragen, statt eine Dublette anzulegen. Bereits verwendete Firmennamen werden vervollständigt, und nach dem Speichern eines neuen Besuchers öffnet sich gleich der Dialog für den ersten Besuch.
-
Besucherbuch: Ein angepinnter Filter zeigt die Besucher mit unvollständigen Besuchszeiten, z. B. mit noch fehlender Abreise. Nach dem Speichern eines Besuchs erscheint wieder die Liste.
-
Listenfilter mit Checkliste (Kunde, Projekt, Business Unit): Sie weisen darauf hin, dass sie nur das aktuelle Ergebnis weiter einschränken, berücksichtigen auch den Suchbegriff der Liste und bieten „Aus allen wählen“, um auch Werte außerhalb des aktuellen Ergebnisses auszuwählen. In den Zeitberichten bieten sie auch ohne Zeitraum Werte an.
-
Sipgate: Konfiguration herunterladen, Synchronisieren und Kontakte zurücksetzen sind jetzt ein Menü der System-Seite (sichtbar, wenn Sipgate konfiguriert ist); die eigene Sipgate-Seite und ihr Menüeintrag entfallen. Während eine Aktion der System-Seite läuft, wird ein Fortschrittsbalken angezeigt; der Kontaktabgleich lädt nicht mehr alle synchronisierten Adressen erneut.
-
Strukturelement-Felder: Ein Klick auf das gewählte Strukturelement öffnet den Baum, wie der Stift-Button. Auftragspositionen zeigen den Verbrauchsbalken ihres Strukturelements, der zu dessen Zeitberichten führt.
-
Benutzerliste: Deaktivierte Benutzer:innen werden durchgestrichen angezeigt.
-
Massenänderungen von Zeitberichten, Rechnungen, Eingangsrechnungen, Projekten, Adressen, Zugriffsrechten und Liquiditätseinträgen verlinken wieder ihr Protokoll: Der Log-Viewer zeigt, was der Lauf geändert hat.
-
Banking
-
Bankkonten, Kontoumsätze und der Umsatz-Import in die neue Oberfläche migriert. Der Import ist eine eigene Seite: Konto wählen, csv-Datei ablegen, die Vorschau mit den Unterschieden zu den gespeicherten Umsätzen prüfen.
-
Kontoumsätze: Der Filter der Bankkonten berücksichtigt alle gewählten Konten, nicht nur das erste.
-
Bankkonten: Die Auswahl eines Kontos zeigt dessen Namen.
-
Der Import von Umsätzen wird für ein Konto ohne Schreibrecht abgelehnt, und das Konto eines gespeicherten Umsatzes lässt sich nicht mehr ändern.
-
Umsatz-Import: Ein Umsatz ohne Datum, Wertstellung oder Betrag wird in der Vorschau als fehlerhaft markiert, statt stillschweigend zu entfallen (ohne Datum) oder den Import scheitern zu lassen, und der Fehler eines Umsatzes eines anderen Kontos erscheint nur einmal.
-
-
Import der Eingangsrechnungen
-
Nach dem Übernehmen bleibt die Importseite offen: Der Fortschritt wird dort angezeigt, und nach dem Import wird die Vorschau erneut abgeglichen.
-
-
Kreditorenrechnungen: Die alte Upload-Seite des CSV-Imports ist entfernt; der Import läuft in der neuen Oberfläche.
-
Jobmonitor auf die neue Oberfläche migriert: laufende und kürzlich beendete Hintergrundjobs mit ihrem Fortschritt, das Abbrechen wird vorher bestätigt. Nach einem Import geht es zurück zum Import, sobald sein Job fertig ist, aber nur auf eine Seite desselben Servers. Alte Links werden umgeleitet.
-
Memos auf die neue Oberfläche migriert: Liste und Formular. Ein Memo sieht weiterhin nur, wem es gehört.
-
Besucherbuch auf die neue Oberfläche migriert: Liste mit dem letzten Besuch und der Zahl der Besuche, Formular mit den Ansprechpartnern, Besuche im Dialog erfasst (vorbelegt mit heute und der aktuellen Uhrzeit). Das Löschen des letzten Besuchs schlägt nicht mehr fehl, und ein Besuch lässt sich keinem anderen Besucher mehr zuordnen. Alte Links werden umgeleitet.
-
Die klassische Version der Adresskampagnen-Werte (Liste, Massenänderung und das von dort geöffnete Adressformular) wurde entfernt, die neue Oberfläche deckt alles ab.
-
Merlin-Word®-Vorlagen auf die neue Oberfläche migriert: Liste, Verwaltungsformular mit den Variablen und die Ausführung, einzeln und als Serie.
-
Links früherer Versionen
-
Alte Links auf Seiten der früheren Oberflächen werden nur noch auf die neuen Seiten weitergeleitet, wenn sie per Mail verschickt oder geteilt wurden: Aufträge, To-dos, Urlaubseinträge, Datentransfer, Umfrage-Antworten, die Passwortänderung und die Fehlerübersicht des System-Dashboards. Auch die früheren Startseiten (Login, Kalender) und der Direktanruf werden weiterhin weitergeleitet. Lesezeichen anderer alter Seiten führen nicht mehr auf die neuen und sollten erneuert werden.
-
Die Links der Erinnerungsmails zu bald endenden Umfragen (Versionen 8.0 und 8.1) führen wieder auf die Antwortseite.
-
-
Import der Eingangsrechnungen
-
Eine importierte Rechnung überschreibt keine andere gespeicherte Rechnung desselben Kreditors mehr (Nummer, Datum und Währung einer älteren Rechnung wurden ersetzt).
-
Gegenbuchungen von Kreditkartenzahlungen (Gutschrift auf einem Kreditkarten-Verrechnungskonto) werden übersprungen; ihr Datum wird Zahldatum der Rechnung, falls diese keines hat. Andere Gutschriften werden mit negativem Betrag importiert.
-
Ein Import nur mit Rechnungsköpfen bietet keine gespeicherten Rechnungen mehr zum Löschen an, ein Positions-Import nur solche innerhalb seiner Perioden.
-
Warnungen bei einem Zahldatum vor dem Rechnungsdatum und bei Rechnungen mit EUR und einer anderen Währung (EUR wird übernommen).
-
Ein Import mit weniger Positionen als die gespeicherte Rechnung entfernt nur die überzähligen Positionen; zuvor wurde die ganze Rechnung gelöscht.
-
Der Positions-Import übernimmt das Zahldatum (bei unterschiedlichen Daten der Positionen das späteste, mit Warnung) und setzt den Zahlbetrag auf die Bruttosumme der Rechnung abzüglich Skonto; ein fehlendes Zahldatum lässt das gespeicherte stehen, ebenso einen gespeicherten Zahlbetrag. Bisher setzte nur der Kopfdaten-Import das Zahldatum.
-
Eine Position ohne Kostenstellen im Import behält ihre gespeicherte Kostenzuweisung; sie wurde nach jedem Import als modifiziert angezeigt.
-
Der Abgleich mit den gespeicherten Rechnungen ist deutlich schneller, und die Vorschau einer großen Datei erscheint ohne lange Wartezeit.
-
DATEV-Dateien: Steuersätze und Zahlbeträge im deutschen Format (z. B. „5,50“, „1.234,56“) werden korrekt gelesen; ein Steuersatz von 5,5 % wurde als 5 % übernommen.
-
-
Nummernkreise: Ein Nummernkreis mit Kunden ohne konfigurierte Segmente zeigt Projekt- und Kostenträgernummern nach seinen Stellen (z. B. 7.0001.0 bei einer Projektstelle) statt 7.000.10.
-
Projektassistent: Tabs und feststehende Aktionsleiste wie auf den Editseiten; der Schritt Aktion zeigt, was eingerichtet wird (neuer Kunde, neues Projekt, Pfad der neuen Strukturelemente, Zugriffsrechte) und was noch fehlt; der Abschluss-Button ist immer anklickbar, und während der Einrichtung zeigt ein Fortschrittsbalken, dass sie läuft.
-
Telefonanruf: Anrufe von einem externen Telefon ohne zugeordnete Rufnummer wurden von sipgate abgelehnt.
-
Strukturelement-Felder zeigen nach dem Umbenennen oder Verschieben eines Strukturelements sofort den neuen Namen und Pfad, ohne Neuladen.
-
Beträge
-
Die Beträge von Kontoumsätzen sowie von Liquiditätseinträgen und -serien werden in den Formularen mit zwei Nachkommastellen und der Währung angezeigt.
-
-
Der Import der Eingangsrechnungen zeigt, was sich in einer geänderten Zeile geändert hat: alter und neuer Wert in jeder verglichenen Spalte, auch beim Bruttobetrag, und die geänderten Felder ohne eigene Spalte (z. B. das Bezahldatum einer Datei mit Positionen) in der Statuszelle.
-
Gruppen und Termine bieten keinen Link mehr auf die alte Oberfläche an: Deren Seiten funktionierten nicht mehr.
-
Jobmonitor: Den Abbrechen-Button eines Jobs sieht nur, wer ihn abbrechen darf; andere sahen einen Button ohne Wirkung.
-
Der 2FA-Dialog der alten Oberfläche wurde entfernt: Ein zweiter Faktor für geschützte Aktionen wird nur noch in der neuen Oberfläche abgefragt. Seiten der alten Oberfläche erhalten stattdessen eine Zugriffsverweigerung, alte Links führen auf die Startseite.
ProjectForge 9.0.12 veröffentlicht
2026-10-21, Tag 9.0.12-RELEASE Nur Quellcode
-
Sicherheit gehärtet: strengere Zugriffsprüfungen, Content Security Policy, zweiter Faktor auf weiteren Seiten
-
config.xml durch Konfigurationsparameter ersetzt
-
Umfragen überarbeitet; Verträge, Währungspaare, Skillmatrix und 2FA-Einrichtung migriert
-
Auftragsfreigaben für Projektmanager:innen je Kunde, Kundengruppe oder Business Unit
-
Neues Benutzerrecht Kunden, von Admins zu vergeben
-
Forecast: aktueller Monat und gelöschte Aufträge korrigiert
Überblick
-
Sicherheit: Über Ändern, Löschen und Wiederherstellen eines Eintrags entscheidet auch der gespeicherte Eintrag, nicht nur der gesendete; strengere Content Security Policy und neue Security-Header; Anfragen, die etwas ändern, werden als POST gesendet; weitere Seiten verlangen den zweiten Faktor ihres Bereichs; QR-Codes werden nicht mehr als Bild-Links ausgeliefert.
-
Kunden: Kunden anlegen, ändern und löschen erfordert das neue Benutzerrecht „Kunden“ (Finanzen); die Mitgliedschaft in der Finanzgruppe reicht nicht mehr, Admins müssen es vergeben. Der Kundenassistent funktioniert auch mit nur einem der Rechte für Kunden und Projekte.
-
Auftragsfreigaben: Finance und Controlling geben Projektmanager:innen und Projektassistent:innen lesenden Zugriff auf alle Aufträge eines Kunden, einer Kundengruppe oder einer Business Unit, samt Rechnungen, Forecast und Deckungsbeiträgen.
-
Konfiguration: Die config.xml ist durch Konfigurationsparameter mit eigenen Editoren ersetzt (Feiertage, JIRA-Server, Vertragsarten, Buchhaltungseinstellungen) und wird beim ersten Start automatisch übernommen; die projectforge.properties lässt sich mit ihren Sicherungskopien vergleichen.
-
Neue Oberfläche: Umfragen (überarbeitet, mit Vorlagen und Ergebnis-Reiter), Verträge, Währungspaare, Skillmatrix, Posteingang und -ausgang, Zwei-Faktor-Einrichtung, Mein Menü gestalten, E-Rechnungsprüfung und Geburtstags-Butler migriert.
-
Entfernt: die d.velop-Schnittstelle.
-
Behoben: Der Forecast des aktuellen Monats addiert IST-Daten und restlichen Forecast, der Plan ist das Auftragsbuch zum Plandatum (gelöschte Aufträge korrigiert); Sortierung der Kunden nach Nummer; ein beschädigtes JCR-Repository verhindert nicht mehr den Start, wenn Dateien in der Datenbank liegen.
Alle Änderungen
-
Auftragsfreigaben: Finance und Controlling geben Projektmanagern und Projektassistenten lesenden Zugriff auf alle Aufträge eines Kunden, einer Kundengruppe oder einer Business Unit, samt Rechnungen, Forecast und Deckungsbeiträgen (neuer Tab im Editor der Kundengruppen).
-
System-Seite: Die projectforge.properties lässt sich mit ihren Sicherungskopien vergleichen, oder zwei Sicherungskopien miteinander. Wahlweise wird die Reihenfolge ignoriert, sodass nur geänderte Werte und Kommentare angezeigt werden; Werte von Secrets bleiben verborgen, angezeigt wird nur, ob sie sich geändert haben.
-
Mein Menü gestalten: in die neue Oberfläche migriert. Einträge werden per Ziehen oder Klick ins eigene Menü übernommen, Gruppen lassen sich anlegen, umbenennen und entfernen; leere Gruppen werden nicht mehr als defekte Einträge gespeichert.
-
Beim Anordnen von Grafik-Dashboards sind der Anfasser zum Verschieben (oben links an der Kachel) und das Kachelmenü (oben rechts) vollfarbig orange dargestellt.
-
E-Rechnungsprüfung: in die neue Oberfläche migriert. Gültigkeit, Rechnungsdaten, Verkäufer, Käufer und Beträge stehen nebeneinander, Beträge in der Währung der Rechnung; eingebettete Anhänge werden per Klick heruntergeladen.
-
Zu bestätigende Benachrichtigungen: Mehrere werden untereinander in einem Toast angezeigt statt hintereinander gestapelt, und der Toast weicht aus, solange die Liste der Glocke geöffnet ist.
-
Geburtstags-Butler: in die neue Oberfläche migriert. Der aktuelle Monat ist vorbelegt, und ohne konfigurierte Organisation weist die Seite darauf hin, statt einen Download anzubieten, der nur scheitern kann.
-
Einrichtung der Zwei-Faktor-Authentifizierung auf die neue Oberfläche migriert: Mobilfunknummer, Authenticator-App und WebAuthn-Token auf einer Seite, ein Token wird in einem Dialog umbenannt oder gelöscht. Das Löschen eines WebAuthn-Tokens erfordert jetzt ebenfalls einen aktuellen zweiten Faktor. Alte Links werden umgeleitet.
-
config.xml durch Konfigurationsparameter ersetzt
-
Feiertage, JIRA-Server, Vertragsarten und die Buchhaltungseinstellungen (Kontenbereiche, betriebswirtschaftliche Auswertung) werden auf der Konfigurationsseite als Parameter gepflegt, jeweils mit eigenem Editor (Zeilen der BWA verschiebbar, Formeln und Skripte sowie JIRA-URLs und Projektkürzel beim Speichern geprüft); Änderungen der Feiertage gelten ohne Neustart.
-
Eine vorhandene config.xml wird beim ersten Start automatisch übernommen (in die noch leeren Parameter, ihre Verzeichnisse nach projectforge.dir.* in projectforge.properties) und danach in config.xml.migrated umbenannt.
-
Der Export der config.xml in der Systemadministration ist entfernt.
-
-
Verträge auf die neue Oberfläche migriert: Liste mit Zeitraumfilter auf dem Datum, Formular mit Vorschlägen aus anderen Verträgen, den konfigurierten Vertragsarten, JIRA-Links, Anhängen und Klonen. Ein von der bisherigen Liste gespeicherter Jahr-Filter wird weiter angezeigt und lässt sich entfernen. Alte Links werden umgeleitet.
-
Kunden: neues Benutzerrecht „Kunden“ (Finanzen), analog zu dem für Projekte. Kunden anlegen, ändern und löschen erfordert es mit Lese- und Schreibzugriff; die Mitgliedschaft in der Finanzgruppe reicht nicht mehr, Admins müssen es vergeben. Auch der Kundenassistent benötigt es für neue Kunden.
-
Umfragen auf die neue Oberfläche migriert und überarbeitet: Liste, Formular und Antwortseite, Fragen umsortierbar oder aus Vorlagen übernehmbar (eingebaute oder eigene, als Vorlage markierte Umfragen), Umfragen klonbar, ein Reiter mit den Ergebnissen neben dem Excel-Export. Teilnehmer:innen und Vollzugriff auch über Gruppen (spätere Mitglieder eingeschlossen). Mehrfachauswahlfragen nehmen wieder mehrere Antworten an, Antworten bleiben bei ihrer Frage, auch wenn sich die Fragen ändern. Die Ergebnisse sieht nur, wer Vollzugriff hat; beendete Umfragen können nicht mehr beantwortet oder geändert werden, und ihr Ende wird einmal gemailt. Alte Links werden umgeleitet.
-
Posteingang und Postausgang auf die neue Oberfläche migriert: Liste und Formular, mit der Autovervollständigung der Freitexte. Alte Links werden umgeleitet.
-
Kundenassistent: auch mit nur einem der Rechte für Kunden und Projekte nutzbar. Mit dem Recht für Kunden allein wird ein neuer Kunde angelegt (optional mit seinem Strukturelement), mit dem Recht für Projekte allein ein Projekt für einen vorhandenen Kunden eingerichtet. Mit beiden legt „Kein Projekt“ nur den Kunden an. Gruppen samt Zugriffsrechten sind optional, vorausgewählt ist keine Gruppe mehr.
-
Skillmatrix auf die neue Oberfläche migriert: Liste und Formular, Bewertungen als Sterne, der Excel-Export der Statistik in der Liste und eine Massenänderung von Bewertung, Interesse und Kommentar. Alte Links werden umgeleitet.
-
Währungspaare auf die neue Oberfläche migriert: Liste mit dem heute gültigen Kurs, Formular mit den Umrechnungskursen des Paares, bearbeitet in einem Dialog direkt im Formular. Für einen neuen Kurs werden die Kurse beider Richtungen für sein Datum aus der Online-Quelle vorgeschlagen; der heute gültige Kurs ist markiert, künftige Kurse sind abgeschwächt dargestellt. Alte Links werden umgeleitet.
-
Kundenliste: Die Sortierung nach Kundennummer funktioniert wieder.
-
Forecast der Auftragsstatistik und sein Excel-Export: Im aktuellen Monat werden die IST-Daten (Rechnungen) und der restliche Forecast addiert (ebenso Rechnungen und Forecast des Plans), statt den größeren Wert zu nehmen. Kumulierter Forecast und Plan stimmen damit mit den Summen der Projektübersicht überein. Die Anmerkung dazu im Excel-Blatt 'Grafiken 1' entfällt.
-
Forecast-Plan: Der Plan ist das Auftragsbuch zum Plandatum. Die Forecast-Grafiken der Auftragsstatistik enthalten jetzt auch die seitdem gelöschten Aufträge, wie der Excel-Export. Zum Plandatum bereits gelöschte Aufträge sind nicht mehr enthalten: Die täglichen (inkrementellen) Snapshots des Auftragsbuchs behielten die seit Monatsbeginn gelöschten Aufträge. Das ist auch für bestehende Snapshots korrigiert.
-
Dateien: Mit projectforge.files.store=db verhindert ein JCR-Repository, das sich nicht öffnen lässt (z. B. beschädigt), den Start nicht mehr. ProjectForge startet ohne es und protokolliert einen Fehler; noch nicht aus dem JCR migrierte Dateien fehlen dann, Migration, Backup und Prüfung des JCR entfallen.
-
Auf die neue Oberfläche migrierte Listen ignorieren Spalten und eine Sortierung, die die alte Liste für nicht mehr vorhandene Spalten gespeichert hat; Spalten, die in einer gespeicherten Reihenfolge fehlen, erscheinen an ihrer üblichen Stelle statt am Ende.
-
Properties-Editor: Werte aller Parameter, die auf „key“ enden (z. B. projectforge.receiveSmsKey), gelten als Secrets und werden nicht mehr angezeigt.
-
Die d.velop-Schnittstelle (Abgleich von Kunden und Kreditoren als Geschäftspartner) wurde entfernt.
-
Weitere Seiten verlangen den zweiten Faktor ihres Bereichs: die Importe von Gehältern, Eingangsrechnungen und Kontoumsätzen, der Upload von Eingangsrechnungen, die Bankkonten, Währungspaare und Wechselkurse, die Kundengruppen und der Projekt-Assistent (Finanzen) sowie der Strukturbaum-Assistent, die Caches und die Sipgate-Seite (Administration). Die Systemstatistik verlangt nicht mehr den zweiten Faktor der Administration.
-
Die QR-Codes des Authenticator-Schlüssels (Einrichtung der Zwei-Faktor-Authentifizierung), des REST-Client-Tokens (Mein Konto) und der Kalender-Abonnements werden in der Antwort mitgeschickt statt als Bild-Link, Geheimnis oder Token landen so nicht mehr in Zugriffsprotokollen. QR-Code-Bilder werden nicht mehr zwischengespeichert. Die WebAuthn-Optionen enthalten die Session-ID nicht mehr, und Änderungen an der Zwei-Faktor-Einrichtung prüfen das CSRF-Token selbst.
-
Sicherheits-Härtung
-
Strengere Content Security Policy als Standard (kein eval, keine fremden Frames, Objekte oder Formularziele), neue Header Referrer-Policy und Permissions-Policy, keine widersprüchlichen X-Frame-Options mehr. Ein eigener Wert von projectforge.security.csp-header-value bleibt unverändert.
-
Die Session-ID wird nach einem erfolgreichen zweiten Faktor erneuert.
-
Die Vorbelegung eines neuen Eintrags und das Klonen setzen das Recht voraus, solche Einträge anzulegen.
-
HTML der Forecast-Analyse und von Listenhinweisen wird gründlicher escaped bzw. bereinigt.
-
Umfragen: Nur Teilnehmende antworten, und zwar für sich selbst, ein Nutzer mit Vollzugriff auch für Teilnehmende; fremde Antworten lassen sich nicht mehr überschreiben, und gleichzeitige Nutzer vermischen ihre Umfragen nicht mehr.
-
Anfragen, die etwas ändern (2FA-Codes senden, Systemaktionen, Jobs abbrechen, Abmelden, Listen- und Kalenderfilter sowie Favoriten speichern), werden per POST gesendet.
-
Datentransfer: Wer einen Bereich ändern oder löschen darf, entscheiden seine gespeicherten Admins; niemand kann sich mehr durch Speichern selbst zum Admin eines Bereichs machen.
-
Projekt-Assistent: Bestehende Zugriffsrechte einer Gruppe auf den übergeordneten Elementen werden nur ergänzt, nie verringert; die Vorschau zeigt nichts über Elemente, die der Nutzer nicht sehen darf.
-
Korrekturen des Urlaubskontos legen nur HR-Mitarbeitende mit Schreibrecht an, auch die Vorbelegung einer neuen.
-
Skill-Matrix: Speichern verschiebt einen Skill nicht mehr zu einem anderen Nutzer.
-
Die ungenutzten Endpunkte für QR-Code-Bilder sind entfernt; QR-Codes kommen nur noch als Data-URLs.
-
Auftragsbuch: Ob Projektleitende einen Auftrag ändern oder löschen dürfen, entscheidet auch der gespeicherte Auftrag; ein fremder Auftrag lässt sich nicht mehr durch Speichern mit dem eigenen Projekt übernehmen.
-
Das Beenden einer Massenänderung (Abbrechen) wird per POST gesendet.
-
Ob ein Eintrag gelöscht oder wiederhergestellt werden darf, entscheidet auch der gespeicherte Eintrag, nicht nur der gesendete: Ein fremder Eintrag (z. B. Memo, Zeitbericht oder Kalender) lässt sich nicht mehr durch Löschen oder Wiederherstellen mit dem eigenen Benutzer als Besitzer übernehmen.
-
Kalendertermine: Ändern oder Löschen eines Termins verlangt auch Schreibzugriff auf seinen gespeicherten Kalender; ein fremder Termin lässt sich nicht mehr in den eigenen Kalender verschieben.
-
To-dos, Merlin-Vorlagen und Umfragen: Ob ein Eintrag geändert werden darf, entscheidet auch der gespeicherte Eintrag (Zuständige, Admins, Besitzer), nicht nur der gesendete.
-
Systemgruppen lassen sich nicht mehr löschen, indem sie unter anderem Namen gesendet werden.
-
Bankkonten: Ob ein Konto geändert oder gelöscht werden darf, entscheidet das gespeicherte Konto; ein fremdes Konto lässt sich nicht mehr durch Speichern mit dem eigenen Benutzer als Besitzer übernehmen.
-
Adressen: Eine Adresse in ein Adressbuch aufzunehmen, setzt Vollzugriff auf dieses Buch voraus, auch wenn sie zusammen mit einem eigenen gespeichert wird.
-
Rechnungen: Beim Löschen gelten Typ und stornierte Rechnung des gespeicherten Eintrags; eine Rechnung, die als Storno-Rechnung gesendet und so gelöscht wird, setzt den Status einer anderen Rechnung nicht mehr zurück.
-
ProjectForge 9.0.11 veröffentlicht
2026-10-20, Tag 9.0.11-RELEASE Nur Quellcode
-
Kundenassistent: Kunde, Projekt, Strukturelement und Gruppen in einem Schritt
-
Projekt-Ansprechpartner:innen statt Projektmanagement, Management Business Unit und Key-Account-Manager:in
-
Datentransfer: externer Zugang in der neuen Oberfläche, Bereiche intern administriert
-
Editor für projectforge.properties, Funktionen abschaltbar
-
Speichern leert nicht mehr das Anlagedatum
Überblick
-
Kundenassistent: richtet Kunde, Projekt mit Kost2-Arten, Strukturelement und Gruppen samt Zugriffsrechten in einem Schritt ein, mit Vorschau; Gruppennamen folgen einer konfigurierbaren Namenskonvention.
-
Projekte: Eine Ansprechpartner:in und beliebig viele weitere, wie bei Aufträgen, ersetzen Projektmanagement, Management Business Unit und Key-Account-Manager:in (migriert).
-
Datentransfer: Der externe Zugang eines Bereichs ist in die neue Oberfläche umgezogen; Bereiche mit externem Zugriff werden auf der internen Instanz administriert und aufs Gateway synchronisiert.
-
Administration: Editor für die projectforge.properties mit Beschreibungen, Standardwerten und Sicherungskopie vor jedem Speichern; Funktionen lassen sich per Konfiguration abschalten (Menüeinträge weg, Seiten und REST-Dienste 404).
-
Urlaub: Urlaubskontokorrekturen auf die neue Oberfläche migriert; Urlaubs- und Abwesenheitseinträge lassen sich als die jeweils andere Art bearbeiten.
-
DATEV-Import: Ein Upload füllt Buchungssätze und Kontenplan.
-
Behoben: Das Speichern eines geänderten Eintrags in der neuen Oberfläche leert nicht mehr sein Anlagedatum (verlorene Daten aus der Historie wiederhergestellt); Menüsichtbarkeit mit einer Liste mehrerer Gruppen funktioniert.
Alle Änderungen
-
Funktionen abschalten
-
Funktionen lassen sich in der Konfiguration abschalten (projectforge.features.enabled und .disabled, eine je Menüeintrag): Ihre Menüeinträge verschwinden, ihre Seiten und REST-Dienste antworten mit 404.
-
Die REST-Dienste nicht aktivierter Plugins sind nicht mehr erreichbar.
-
Das Gateway bietet nur noch den Datentransfer an: Die Einträge des Benutzermenüs, die dort ins Leere führten (Feedback, Mein Zugang, Menü, 2FA, persönliche Box), sind entfernt.
-
Die Sichtbarkeit des Menüeintrags zum Anpassen des Menüs wird über projectforge.menu.visibility.myMenu eingestellt (sie folgte myAccount).
-
-
Gruppen: Eine konfigurierbare Namenskonvention (Konfigurationsparameter „Nomenklatur der Gruppen“: Beschreibung, Muster aus Kunden- und Projektfeldern, Endungen je Rolle, Groß-/Kleinschreibung). Projekt- und Strukturelement-Assistent schlagen die Namen neuer Gruppen danach vor, und die Beschreibung wird am Namen einer Gruppe und in den Assistenten angezeigt.
-
Kundenassistent: richtet ein Projekt in einem Schritt ein – den Kunden (einen vorhandenen oder einen neuen), das Projekt mit seinen Kost2-Arten, sein Strukturelement unterhalb eines gewählten und die Gruppen von Team, Teammanager:innen und Externen (vorhandene oder neue mit ihren Mitgliedern) samt ihrer Zugriffsrechte, die vor dem Speichern in einer Vorschau angezeigt werden. Verfügbar für alle, die Kunden, Projekte und Strukturelemente anlegen dürfen; über den Assistenten dürfen sie ausnahmsweise auch Gruppen und Zugriffsrechte anlegen. Angeboten in der Kundenliste, der Projektliste, im Strukturbaum und in der Aufgabenliste.
-
Urlaub und Verfügbarkeit: Ein Eintrag kann als die jeweils andere Art bearbeitet werden („Als Abwesenheit bearbeiten“ / „Als Urlaub bearbeiten“), wie Zeitbuchungen und Termine (jetzt „Als Termin bearbeiten“ / „Als Zeitbuchung bearbeiten“, bisher „In … umwandeln“). Person, Zeitraum, Kommentar und Vertretungen werden in einen neuen Eintrag übernommen, der erst beim Speichern angelegt wird; ein bereits gespeicherter Eintrag bleibt unverändert. Das erklärt auch der Tooltip der Schaltfläche.
-
Administration → System: Editor für die projectforge.properties. Alle Parameter nach Themen gruppiert mit Beschreibungen und Standardwerten, Suche, Geheimnisse maskiert. Vor jedem Speichern wird eine Kopie der Datei mit Zeitstempel abgelegt; Änderungen werden nach einem Neustart wirksam.
-
Verfügbarkeiten: Der Ort eines neuen Eintrags ist nicht mehr mit Remote vorbelegt, ein leerer Typ oder Ort wird als „keine Angabe“ angezeigt. Neuer Typ „Mobile Tätigkeit“ für Remote-Arbeit ohne Workation; Installationen mit eigener Typenliste (projectforge.availability.types) ergänzen ihn dort.
-
DATEV-Import: Ein Upload der Datei des Steuerbüros füllt beide Reiter, Buchungssätze und Kontenplan, sodass beide ohne erneuten Upload abgeglichen werden können.
-
Datentransfer mit Gateway
-
Bereiche mit externem Download oder Upload werden wieder auf der internen Instanz administriert. Jede Synchronisation überträgt sie auf das Gateway, auf das der externe Link zeigt und auf dem Externe und die internen Berechtigten die Dateien finden. Auf dem Gateway wird kein Bereich mehr administriert (weder angelegt, geändert noch gelöscht; auch keine persönlichen Boxen), ein Hinweis dort verweist auf die Hauptinstanz, und die Beobachter bekommen die Benachrichtigungen von dort. Wird der externe Zugriff abgeschaltet oder der Bereich gelöscht, verschwindet er vom Gateway.
-
Der externe Link eines gelöschten Bereichs funktioniert nicht mehr.
-
-
Datentransfer: Der externe Zugang eines Bereichs (Anmeldung mit dem Passwort des Bereichs, danach dessen Dateien) ist in die neue Oberfläche umgezogen. Der Link des Bereichs zeigt jetzt dorthin; früher verschickte Links führen ebenfalls dorthin. Wie im Bereich selbst öffnet ein Klick auf eine Datei ihre Details (bei fremden Dateien nur zum Ansehen), die neuesten Dateien stehen oben, und die Spalteneinstellungen bleiben (im Browser) erhalten. Eigene Uploads lassen sich jetzt auch verschlüsseln. Externe sehen nicht mehr, wer die anderen Dateien hochgeladen hat, außer sie sind zusätzlich in ProjectForge angemeldet und haben dort Zugriff auf den Bereich (sie sehen auch dessen Aktivitäten), und können keine fremden Dateien mehr umbenennen. An- und Abmelden im externen Zugang beendet keine Anmeldung bei ProjectForge im selben Browser mehr.
-
Projekte: Statt Projektmanagement, Management Business Unit und Key-Account-Manager:in gibt es wie bei Aufträgen eine Ansprechpartner:in und beliebig viele weitere (migriert: das Projektmanagement wird Ansprechpartner:in, die anderen werden weitere Ansprechpartner:innen). Alle haben denselben Zugriff auf das Projekt und seine Aufträge und Rechnungen; die Projektliste zeigt sie in einer Spalte, die Massenänderung setzt die Ansprechpartner:in, und beim Wählen eines Projekts im Auftrag werden dessen Ansprechpartner:innen übernommen.
-
Urlaubskontokorrekturen auf die neue Oberfläche migriert: Liste und Formular. HR kann im Urlaubskonto direkt eine Korrektur für den angezeigten Mitarbeiter anlegen; eine dort geöffnete Korrektur kehrt dorthin zurück. Alte Links werden umgeleitet.
-
Sichtbarkeit von Menüs (projectforge.menu.visibility.*): Eine Liste mehrerer Gruppen funktioniert, getrennt durch Komma oder Semikolon (erkannt wurde nur eine einzelne Gruppe, eine Liste gar nicht).
-
Das Speichern eines geänderten Eintrags in der neuen Oberfläche leert nicht mehr sein Anlagedatum. Das Datum der letzten Änderung setzt immer der Server. So verlorene Anlagedaten werden aus der Historie wiederhergestellt.
ProjectForge 9.0.10 veröffentlicht
2026-10-19, Tag 9.0.10-RELEASE Nur Quellcode
-
Mitarbeiter:innen und Kost-Suche migriert
-
Deutsche Website
-
Getrenntes „Anlegen“ und „Speichern“ in Bearbeitungsformularen
-
Verfügbarkeit: nur noch „Bei Bedarf erreichbar“, öffentlicher Kommentar fürs Team
Überblick
-
Mitarbeiter:innen: Liste und Formular in der neuen Oberfläche; Status, Wochenstunden und Urlaubstage in Dialogen bearbeitet.
-
Kost-Suche: in der neuen Oberfläche, auch als verschiebbares Fenster auf jeder Seite (Alt+K) oder als kleines eigenes Fenster.
-
Bearbeitungsformulare: „Anlegen“ für einen neuen Eintrag, „Speichern“ für einen bestehenden; Speichern legt nie eine Kopie an.
-
Verfügbarkeit: „Bei dringendem Bedarf erreichbar“ in „Bei Bedarf erreichbar“ aufgegangen; der öffentliche Kommentar, im Formular in Rot, ist fürs Team sichtbar, auch in den Tooltips der Abwesenheitsdiagramme.
-
Website: deutsche Fassung der Seiten, FAQ, des Changelogs und der Handbücher unter projectforge.org/de.
-
Rechnungen: Eine Rechnung nur mit gelöschten Positionen lässt sich wieder löschen und wiederherstellen.
Alle Änderungen
-
Website: deutsche Fassung der Seiten, der FAQ, des Changelogs und des Benutzer-, Administrations- und Schnellstart-Handbuchs unter projectforge.org/de, mit Sprachumschalter; der Hilfe-Link des Suchfelds öffnet für deutschsprachige Benutzer das deutsche Benutzerhandbuch.
-
Verfügbarkeit: „Bei dringendem Bedarf erreichbar“ ist in „Bei Bedarf erreichbar“ aufgegangen. Der Kommentar eines Eintrags heißt „Öffentlicher Kommentar“ und steht im Formular in Rot; alle Teammitglieder, die den Eintrag sehen, sehen ihn, auch in den Tooltips der Abwesenheitsdiagramme (z. B. im Diagramm der Vertretungen eines Urlaubs).
-
Kost-Suche: in die neue Oberfläche migriert. Der Menüeintrag blendet sie als verschiebbares Fenster über der aktuellen Seite ein, das auf jeder Seite offen bleibt (auch über die Schaltfläche in der Kopfleiste oder Alt+K; die Position wird gemerkt). Sie lässt sich auch als kleines eigenes Fenster öffnen.
-
Bearbeitungsformulare: Ein neuer Eintrag wird mit „Anlegen“ gespeichert, ein bestehender mit „Speichern“. Beides sind getrennte Schreibvorgänge: Das Speichern eines bestehenden Eintrags kann keine Kopie mehr anlegen, und das Anlegen überschreibt nie einen bestehenden Eintrag.
-
Mitarbeiter:innen: Liste und Formular der Mitarbeiter:innen sind in die neue Oberfläche migriert. Status, Wochenstunden und Urlaubstage werden in Dialogen direkt im Formular bearbeitet; der heute gültige Eintrag ist markiert, künftige Einträge sind abgeschwächt dargestellt.
-
Rechnungen und Eingangsrechnungen: Eine früher nur mit gelöschten Positionen gespeicherte Rechnung lässt sich wieder löschen und wiederherstellen; nur das Speichern wird abgelehnt.
ProjectForge 9.0.9 veröffentlicht
2026-10-19, Tag 9.0.9-RELEASE Nur Quellcode
-
Hotfix-Release
-
Fix: Speichern einer Adresskampagne oder eines Kontos legt keine Kopie mehr an
-
Fix: Aufträge und Rechnungen, deren Positionen alle gelöscht sind, werden abgelehnt
Überblick
-
Adresskampagnen und Konten: Das Speichern eines bestehenden Eintrags in der neuen Oberfläche legt keine Kopie mehr an (z. B. beim Inaktivsetzen einer Kampagne); Kampagnentitel sind eindeutig.
-
Aufträge und Rechnungen: Ein Eintrag, dessen Positionen alle gelöscht wurden, wird beim Speichern abgelehnt, statt ohne Positionen gespeichert zu werden.
-
Weitere Fixes: Suchbegriff in Auswahlboxen mit Mehrfachauswahl, Spaltenüberschriften der Verfügbarkeitseinträge im Urlaubskonto, Build-Datum in der Fußzeile.
Alle Änderungen
-
Adresskampagnen und Konten: Das Speichern eines bestehenden Eintrags legt keine Kopie mehr an (z. B. beim Inaktivsetzen einer Kampagne). Der Titel einer Kampagne darf nicht schon von einer anderen Kampagne verwendet werden.
-
Fußzeile: Das Build-Datum wird ohne Zonen-Suffix angezeigt (2026-10-19 statt 2026-10-19Z).
-
Aufträge, Debitoren- und Kreditorenrechnungen: Ein Eintrag, dessen Positionen alle gelöscht wurden, wird beim Speichern abgelehnt, statt ohne Positionen gespeichert zu werden.
-
Auswahlboxen mit Mehrfachauswahl: Nach einer Auswahl bleibt der Suchbegriff markiert, sodass der nächste eingetippte Name ihn ersetzt, statt angehängt zu werden.
-
Urlaubskonto: Die Spalten Typ, Verfügbarkeit, Ort und Kommentar der Verfügbarkeitseinträge zeigen ihre Überschriften statt Textschlüsseln.
ProjectForge 9.0.8 veröffentlicht
2026-10-19, Tag 9.0.8-RELEASE Nur Quellcode
-
Adressen und Adressen für Kampagnen in der neuen Oberfläche
-
Neue Verfügbarkeitseinträge mit Vertretungen und Schnellansicht
-
Kunden und Projekte unabhängig von Kostenträgern, mit Nummernkreisen
-
Auswahlboxen ohne inaktive Einträge, Namenstreffer zuerst
-
Fix: Manager:innen können Urlaube wieder genehmigen
-
Fix: Team-Kalender auf dem Gateway zeigen nur die für die Person sichtbaren Abwesenheiten
Überblick
-
Adressen: Liste, Ansicht und Formular in die neue Oberfläche migriert, mit vCard-Import, Übernahme aus eingefügtem Text, Exporten, Massenänderung und Favoriten-Stern in der Liste; auch die Adressbücher sind migriert.
-
Adressen für Kampagnen: in die neue Oberfläche migriert, mit einer Vergleichskampagne (z. B. der des Vorjahres), deren Werte sich per Massenänderung oder im Formular übernehmen lassen; Kampagnen können auf inaktiv gesetzt werden.
-
Verfügbarkeit: neue Einträge für Zeiträume eingeschränkter Verfügbarkeit (z. B. Elternzeit, Workation) mit Vertretungen und Konflikten, angezeigt im Kalender, in Team-Kalendern, im Team-Urlaubskalender und in einer Schnellansicht der nächsten Wochen.
-
Urlaube anderer: sichtbar für die Mitglieder der Gruppen der Person ab dem 1. Januar des laufenden Jahres; der Team-Urlaubskalender wählt Benutzer:innen aus, auch Freelancer.
-
Kunden und Projekte: systemweit eindeutige Projektnummern, auch ohne Kostenträger nutzbar, konfigurierbare Nummernkreise mit Vorschlag der nächsten freien Nummer.
-
Auswahlboxen und Listen: inaktive Einträge nur auf Wunsch, Namenstreffer zuerst und auch über Namensteile gefunden, lange Listen fordern einen Suchbegriff an; inaktive Einträge in Listen dünn und grau durchgestrichen.
-
Weiteres: Benachrichtigungsregeln beenden beim Deaktivieren ihre offenen Benachrichtigungen und legen das Ziel von „Öffnen“ fest, der Script-Editor vergleicht Versionen, die Wechselkurs-Schnittstelle wird im System-Dashboard getestet, neue Testdaten für das Setup.
-
Fixes: Genehmigung von Urlauben durch Manager:innen, Abwesenheiten in Team-Kalendern auf dem Gateway, Banner manueller Benachrichtigungsregeln, Verbrauchsbalken im Zeitbericht-Formular, Umwandlung von Terminen in Zeitberichte, veraltete Listenanfragen.
Alle Änderungen
-
Verfügbarkeit
-
Neue Einträge für Zeiträume eingeschränkter Verfügbarkeit (z. B. Elternzeit, Workation) für alle Benutzer:innen, auch Freelancer, mit Typ, Erreichbarkeit, Ort, einem Kommentar fürs Team und einem internen Kommentar, den nur die betroffene Person und HR sehen. Überlappende Einträge derselben Person werden abgelehnt. Sichtbar für die Mitglieder der Gruppen der Person nur ab heute (ein laufender Eintrag ohne seinen Beginn, der z. B. die Dauer einer Krankheit verraten könnte), vollständig für HR und die Vertretungen; den Typ sehen nur die betroffene Person und HR. Verlinkt mit der Urlaubsliste; das Urlaubskonto zeigt die Einträge der Person in seinen drei Jahren getrennt von den Urlauben, mit einem Button zum Hinzufügen.
-
Vertretungen eines Urlaubs: Wer nicht verfügbar ist, gilt wie im Urlaub als abwesend und führt zum Konflikt; andere Einträge (z. B. remote erreichbar) zeigt die Urlaubsseite an, ohne Konflikt.
-
Optionale Vertretungen eines Verfügbarkeitseintrags (alle Benutzer:innen, auch Freelancer): Sind an einem Tag alle abwesend (Urlaub oder nicht verfügbar), ist der Eintrag ein Konflikt – angezeigt im Formular mit den Abwesenheiten der Vertretungen, rot in der Liste mit Konfliktfilter und gezählt am Menüeintrag.
-
Kalender: eine gemeinsame Sicht auf Abwesenheiten – für die gewählten Gruppen und Personen werden Urlaube und Verfügbarkeitseinträge angezeigt, mit Auswahl, was zu sehen ist (Urlaube, nicht verfügbar, remote erreichbar usw.), nur von Personen, die mindestens eine Gruppe mit der betrachtenden Person teilen (HR: von allen). Den Typ eines Eintrags sehen nur die betroffene Person und HR, alle anderen den Status.
-
Team-Kalender mit eingebundenen Urlaubstagen und ihre Abonnements (ICS) zeigen auch die Verfügbarkeitseinträge, im Abonnement immer nur mit Status. Jeder Team-Kalender legt fest, welche Abwesenheiten er enthält (Urlaube, nicht verfügbar, remote erreichbar usw.; standardmäßig alle), in der Kalenderansicht wie im Abonnement.
-
Team-Urlaubskalender: mit derselben Auswahl der Abwesenheiten (Urlaube und die Verfügbarkeitseinträge nach Status) für die gewählten Personen, auf dem Bildschirm und im Excel-Export; nicht verfügbare als Abwesenheit, ihre Kommentare nur für diejenigen, die die Einträge selbst sehen dürfen.
-
-
System-Dashboard: Die Wechselkurs-Schnittstelle wird täglich getestet und als Kachel unter den Schnittstellen angezeigt, damit eine Änderung der Schnittstelle früh auffällt. Im Scheduler-Tab lässt sich der Test sofort starten.
-
Adressen für Kampagnen: Eine Vergleichskampagne (z. B. die des Vorjahres) zeigt ihre Werte und Bemerkungen neben denen der gewählten Kampagne, mit Filtern auf ihre Werte und auf die Unterschiede. Ihre Werte lassen sich für eine Auswahl per Massenänderung oder einzeln im Formular übernehmen. Adresskampagnen können auf inaktiv gesetzt werden: Ihre Werte sind dann nicht mehr änderbar.
-
Verfügbarkeit auf einen Blick
-
Eine Schnellansicht in Kalender, Urlaubskonto sowie Urlaubs- und Verfügbarkeitsliste zeigt, ob Kolleginnen und Kollegen verfügbar sind: eine oder mehrere Personen auswählen und deren Urlaube und Verfügbarkeitseinträge der nächsten 4, 8 oder 12 Wochen als Balken sehen, eine Zeile je Person, Wochenenden und Feiertage hinterlegt. Auswählbar sind die Personen der eigenen Gruppen, für HR und Finance alle. Ein Link führt weiter zum Team-Urlaubskalender für Gruppen und längere Zeiträume.
-
-
Script-Bearbeitung: Ein Button „Änderungen anzeigen“ in der Werkzeugleiste des Code-Editors vergleicht zwei Versionen des Codes nebeneinander (auf kleinen Bildschirmen untereinander): den bearbeiteten Code, die gespeicherte Version oder eines der Backups des Scripts.
-
Auswahlfelder (Gruppen, Benutzer, Mitarbeitende, Adressen, Adressbücher, Konten, Bankkonten): Einträge, deren Name zum Suchbegriff passt, werden zuerst angezeigt, vor Einträgen, die nur über andere Felder wie Organisation oder E-Mail gefunden werden. Gruppen, Benutzernamen, Projekte, Kundenkürzel, Adressbücher, Kalender und Bankkonten werden auch über Teile ihres Namens gefunden, z. B. PF_Controlling über „controlling“.
-
Auswahlboxen für Benutzer:innen und Gruppen: Deaktivierte oder gelöschte Benutzer:innen und Gruppen werden durchgestrichen angezeigt, in den gewählten Werten wie in den Suchergebnissen.
-
Listen: Beendete Projekte und nicht mehr aktive Kunden werden durchgestrichen angezeigt, wie in den Auswahlboxen. Nicht mehr aktive, aber nicht gelöschte Einträge (beendete Projekte, inaktive Kunden, stornierte Rechnungen, abgelehnte oder ersetzte Aufträge, inaktive Benachrichtigungsregeln, deaktivierte Verweise) werden jetzt dünn und grau durchgestrichen und sind so von gelöschten Einträgen unterscheidbar, jeweils mit eigenem Legendeneintrag.
-
Monatsbericht: Ist der Konfigurationsparameter „Zeitberichte ohne Kost2 melden?“ aktiviert, werden ohne Kost2 gebuchte Einträge markiert, in der Ansicht wie im PDF-Export.
-
Auswahlboxen
-
Eine Auswahlbox mit vielen Einträgen (30 oder mehr, z. B. User oder Kost2) listet vor der Eingabe nicht mehr ihre ersten Einträge alphabetisch auf, sondern fordert zur Eingabe eines Suchbegriffs auf. Kurze Listen erscheinen beim Öffnen weiterhin vollständig.
-
-
Team-Urlaubskalender: Personen werden als Benutzer:innen ausgewählt, und die Mitglieder einer gewählten Gruppe werden auch ohne Mitarbeiterdatensatz (z. B. Freelancer) mit ihren Verfügbarkeitseinträgen angezeigt, im Diagramm wie im Excel-Export. Bisher gespeicherte Auswahlen und Favoriten werden übernommen.
-
Adressen
-
Liste, Ansicht und Formular der Adressen sind in die neue Oberfläche migriert, samt vCard-Import, Übernahme von Daten aus einem eingefügten Text oder einer vCard, Bild, Exporten (Excel, vCards, CardDAV-Zugang) und Massenänderung.
-
Der Favoriten-Stern einer Adresse lässt sich direkt in der Liste und in der Ansicht umschalten.
-
Direktwahl und SMS an eine Telefonnummer einer Adresse öffnen sich in einem Dialog über der Liste bzw. Ansicht.
-
Ein hochgeladenes Bild geht nicht mehr verloren, wenn das Formular erst mehr als eine Minute nach dem Hochladen gespeichert wird.
-
-
Adressbücher: Liste und Formular der Adressbücher sind in die neue Oberfläche migriert. Die Liste zeigt die Benutzer:innen und Gruppen mit Voll- und Lesezugriff in eigenen Spalten.
-
Listen: Bei Entitäten mit weniger als 100.000 Einträgen bietet das Zahnradmenü nur noch die Voll-Reindizierung des Suchindex an, für alle Benutzer — sie dauert dort nur wenige Sekunden. Größere Entitäten behalten die Reindizierung der neuesten Einträge und die volle für Administratoren.
-
Benachrichtigungsregeln
-
Inaktive Regeln sind in der Liste durchgestrichen.
-
Das Deaktivieren einer Regel beendet ihre offenen Benachrichtigungen: Deren verzögerte Schritte (z. B. die E-Mail) werden nicht mehr gesendet.
-
„Jetzt auslösen“ ist nur noch bei aktiven Regeln möglich.
-
Zustellung: Das Entfernen eines Schritts ändert nicht mehr die Verzögerung des folgenden (sie konnte 0 werden, also sofort gesendet).
-
„Test an mich“ weist darauf hin, dass der Test sofort über alle Kanäle geht, auch per E-Mail.
-
Je Regel ist wählbar, wohin der Button „Öffnen“ ihrer Benachrichtigungen führt: zur Seite des Auslösers, zu einem beliebigen Menüeintrag oder kein Button.
-
„Öffnen“ ist ein Button neben „Bestätigen“ statt eines Links unter dem Text.
-
-
Setup mit Testdaten: neue, umfangreichere Beispieldaten (Kunden, Projekte, Aufträge, Rechnungen, ein halbes Jahr Zeitberichte, Urlaube, Kalender, Liquiditätsplanung) mit Datumswerten relativ zum Tag des Setups. Die Beispielnutzer:innen erhalten das Admin-Passwort. Die Setup-Seite zeigt den Fortschritt an. Die Standard-Plugins sind direkt nach dem Setup aktiv, ohne Neustart.
-
Urlaube anderer: Die Mitglieder der Gruppen der Person sehen sie ab dem 1. Januar des laufenden Jahres (bisher bis 31 Tage nach ihrem Ende), im Kalender, in Team-Kalendern und ihren Abonnements gleichermaßen. Manager und Vertretungen eines Urlaubs, HR und Finanzen sehen ihn vollständig, jetzt auch in der Urlaubsliste (auch HR mit Leserecht, Finanzen und Controlling). Der Team-Urlaubskalender zeigt Finanzen die Verfügbarkeitseinträge anderer wie allen anderen: von den Mitgliedern der eigenen Gruppen, ab heute.
-
Kunden und Projekte unabhängig von Kostenträgern
-
Jedes Projekt hat eine systemweit eindeutige Projektnummer. Kunden und Projekte sind auch ohne Kostenträger (Kost2) nutzbar, mit frei vergebenen Nummern.
-
Nummernkreise für Kunden und Projekte und ihre Zuordnung zu Kost2 werden in der application.properties konfiguriert (projectforge.fibu.number-ranges.*), einschließlich der Stellenzahl der Projekte je Kunde und der Segmente der Kost2-Nummern, z. B. 1.#...
-
Ohne konfigurierte Nummernkreise behalten Installationen, die die bisherigen Kreise 4... (intern) und 5... (Kunden 0-999) für Kostenträger von Projekten genutzt haben, diese bei; sonst sind Kunden- und Projektnummern frei, mit oder ohne Kostenträger.
-
Neue Kunden und Projekte bekommen die nächste freie Nummer ihres Nummernkreises angeboten.
-
Fakturaquote: Optional zählt die Zeit auf fakturierten Kost2-Arten von Kundenprojekten als fakturiert, unabhängig von der Kost2-Nummer (projectforge.invoicing-quota.billed-by-invoiced-kost2-types).
-
Deckungsbeitrag: Kost2-Zuordnungen akzeptieren die Nummern so, wie ihr Nummernkreis sie gliedert (z. B. 1.0007.3).
-
-
Auswahlboxen für Benutzer, Mitarbeiter, Projekte, Kunden und Kostenträger bieten inaktive Einträge (deaktivierte Benutzer, ausgeschiedene Mitarbeiter, beendete Projekte und Kunden) nicht mehr an. Eine Checkbox „Inaktive anzeigen“ in der Auswahlbox blendet sie wieder ein; bei Benutzern und Mitarbeitern steht sie nur HR, Finanzen, Orga und Admins zur Verfügung. Ein bereits gesetzter inaktiver Eintrag bleibt auswählbar.
-
Adressen für Kampagnen: Liste, Formular und Massenänderung auf die neue Oberfläche migriert. Die Adresse öffnet sich aus den Spalten Firma und Adresse in einem Dialog; die bisherige Seite bleibt als klassische Version erreichbar.
-
Zeitbericht-Formular: Der Verbrauchsbalken der Aufgabe ist nach dem Buchen aktuell und zählt gelöschte Zeitberichte nicht mehr mit.
-
Benachrichtigungsregeln
-
Eine manuelle Regel mit der Anzeige „Banner bis erledigt“ lässt ihre Empfänger:innen den Banner immer als erledigt markieren: Sonst beendete ihn nichts, er blieb für immer stehen.
-
Das Deaktivieren oder Löschen einer Regel beendet ihre offenen Benachrichtigungen sofort, nicht erst beim nächsten stündlichen Lauf.
-
Bearbeiter:innen einer Regel können offene Benachrichtigungen im Protokoll der versendeten Benachrichtigungen beenden, einzeln oder alle einer Regel.
-
-
Auftragsstatistik: Auf einem niedrigen Bildschirm (etwa einem Smartphone im Querformat) scrollt die Seite, sodass die Grafiken erreichbar sind.
-
Urlaube: Manager:innen können Urlaube wieder genehmigen und ablehnen; Einträge, die ohne Angabe zu halben Tagen gespeichert waren, wurden mit fehlendem HR-Recht abgewiesen.
-
An das Gateway übertragene Kalender: Ein Team-Kalender mit Abwesenheiten wird für jede Person erzeugt und zeigt genau die Abwesenheiten, die diese Person sehen darf; zuvor konnten es die einer anderen Person mit demselben Zugriff auf den Kalender sein.
-
Umwandlung eines Termins in einen Zeitbericht: Ein Termin, der an einem anderen Tag endet, ergibt keinen mehrtägigen Zeitbericht mehr („Maximal zugelassene Dauer überschritten“); die Endzeit wird am Starttag übernommen.
-
Listen: Nach schnellem Hin- und Herblättern (z. B. ein Jahr zurück und wieder vor) konnte eine Liste aus einem Eintrag mit dem übersprungenen Filter zurückkommen, wenn dessen veraltete Anfrage zuletzt beantwortet wurde.
ProjectForge 9.0.7 veröffentlicht
2026-10-14, Tag 9.0.7-RELEASE Nur Quellcode
-
Benutzer und Teamkalender in der neuen Oberfläche
-
Team-Urlaubskalender auf der Seite, druckbar
-
Hinweis und Benachrichtigung für Zeitberichte ohne Kost2
-
Fix: zusammen mit Gruppen geänderte Rechte werden korrekt gespeichert
-
Fix: strengere Zugriffsprüfungen bei Urlauben
Überblick
-
Benutzer: Liste und Formular in die neue Oberfläche umgezogen; die Rechte passen sich sofort an die zugeordneten Gruppen an, Tokens werden im Formular erneuert und Geräte abgemeldet, Passwörter in einem Dialog geändert; alternative E-Mail-Adressen anderer User werden abgelehnt.
-
Teamkalender: Liste und Formular in die neue Oberfläche umgezogen, mit dem Abonnement-Link im Formular und den Abonnements von Zeitberichten, Kalenderwochen und Feiertagen im Export-Menü.
-
Team-Urlaubskalender: Die Urlaube der gewählten Mitarbeitenden und Gruppen je Quartal oder Jahr mit einstellbarer Tagesbreite, in Seitenbreite druckbar, Auswahlen als Favoriten; Benutzer ohne HR- oder Finanzrechte wählen nur aus ihren eigenen Gruppen.
-
Urlaub: Tagesbalken im Urlaubskonto, lange Urlaube in den Balken eingepasst; die Urlaubsliste von Benutzern ohne HR- oder Finanzrechte zeigt nur die für sie relevanten Urlaube.
-
Zeitberichte ohne Kost2: optionaler Hinweis beim Speichern und tägliche Benachrichtigungsregel, eingeschaltet über einen neuen Konfigurationsparameter; die Konfigurationsliste lässt sich nach Bereich filtern.
-
System-Dashboard: Stummgeschaltete, ignorierte und erledigte Probleme lassen sich über die Anzahlen der Kennzahlen und Subsystem-Kacheln anzeigen.
-
Fixes: zusammen mit Gruppen geänderte Rechte, strengere Zugriffsprüfungen, Übertrag und Mails bei Urlauben, Excel-Export und automatische Buchung von Urlauben, Deckungsbeitrag für Kontakte von Aufträgen, Breite des Bearbeitungsdialogs im Kalender.
Alle Änderungen
-
Zeitberichte ohne Kost2
-
Ein ohne Kost2 gespeicherter Zeitbericht (dem Strukturelement ist noch keine zugeordnet) zeigt einen Hinweis: Er fehlt im Lohn-Export, das Projektmanagement oder die Buchhaltung muss eine Kost2 zuordnen.
-
Benachrichtigungen: neuer Regeltyp für Zeitberichte ohne Kost2 in den letzten Monaten. Täglich ausgeführt, kommt eine als erledigt markierte Benachrichtigung am nächsten Tag wieder und verschwindet von selbst, sobald alle diese Zeitberichte eine Kost2 haben.
-
Neuer Konfigurationsparameter „Zeitberichte ohne Kost2 melden?“ (standardmäßig aus, nur bei freigeschalteter Kostenrechnung sichtbar): Hinweis beim Speichern und Benachrichtigungsregel greifen nur, wenn er aktiviert ist. Buchen ohne Kost2 bleibt möglich.
-
Konfiguration: Die Liste lässt sich nach Bereich filtern (Pillen wie Finanzen oder Zeitberichte).
-
-
Kalender: Der Bearbeitungsdialog für Zeitberichte und Termine erstreckt sich auf großen Bildschirmen nicht mehr über die gesamte Breite.
-
System-Dashboard: Stummgeschaltete Probleme lassen sich mit einem eigenen Statusfilter anzeigen, ein Klick auf die Anzahl stummgeschalteter, ignorierter oder erledigter Probleme einer Kennzahl oder Subsystem-Kachel listet genau diese, und ein Problem, das nach einer Statusänderung aus der Liste fällt, lässt sich über einen Hinweis wieder anzeigen.
-
Benutzer:innen, alternative und frühere E-Mail-Adressen: Eine Adresse, die schon ein anderer User verwendet, wird abgelehnt, die Hauptadresse wird nicht doppelt gespeichert.
-
Urlaubskonto: Tagesbalken
-
Die Urlaube im Urlaubskonto zeigen neben den Tagen ihren Zeitraum als Balken wie in der Urlaubsliste: Arbeitstage, Wochenenden und Feiertage sowie die Tage ohne anwesende Vertretung.
-
Ein Urlaub über vier Wochen wird mit schmaleren Tagen in derselben Breite gezeichnet (bis zu 13 Wochen), statt nach vier Wochen abgeschnitten zu werden, auch in der Urlaubsliste.
-
-
Team-Urlaubskalender: Die Urlaube der gewählten Mitarbeitenden und Gruppen werden jetzt auch direkt auf der Seite angezeigt, je Quartal oder Kalenderjahr und mit einstellbarer Tagesbreite (bis zum ganzen Zeitraum in Fensterbreite); der Excel-Export beginnt mit dem angezeigten Zeitraum, und der Kalender lässt sich in Seitenbreite drucken (oder als PDF speichern). Auswahlen von Mitarbeitenden und Gruppen lassen sich als Favoriten speichern. Benutzer ohne HR- oder Finanzrechte wählen nur aus ihren eigenen Gruppen und sehen keine Vorjahre mehr. Urlaube, die vor einem Blatt des Excel-Exports beginnen, erscheinen jetzt auch darauf.
-
Kalender: Liste und Formular der Teamkalender sind in die neue Oberfläche migriert. Ein gespeicherter Kalender zeigt seinen Abonnement-Link mit einem Schalter für die Erinnerungen, die Liste bietet im Export-Menü das Abonnement von Zeitberichten, Kalenderwochen und Feiertagen an.
-
Benutzer: Liste und Formular der Benutzerverwaltung sind in die neue Oberfläche migriert. Die angebotenen Rechte passen sich sofort an die zugeordneten Gruppen an, Tokens lassen sich direkt im Formular erneuern und Geräte abmelden; Passwörter werden in einem Dialog geändert, hier wie auf der eigenen Kontoseite.
-
Urlaubsliste: Benutzer ohne HR- oder Finanzrechte sehen ihre eigenen Urlaube, die von ihnen zu genehmigenden oder zu vertretenden sowie die Urlaube ihrer Vertretungen, die sich mit den eigenen überschneiden, nicht mehr alle aktuellen Urlaube ihrer Gruppenkollegen.
-
Deckungsbeitrag: Ansprechpartner und weitere Kontakte eines Auftrags sehen den Deckungsbeitrag seines Projekts, wie im Auftragsbuch. Die Zugriffsprüfung von Aufträgen lädt deren Positionen und Zahlungspläne nicht mehr einzeln nach, z. B. für die Forecast-Grafik und den Deckungsbeitrag.
-
Benutzer: Rechte, die zusammen mit den Gruppen geändert werden, werden jetzt korrekt gespeichert. Ein beim Gruppeneintritt gesetztes Recht ging verloren, und das Recht einer verlassenen Gruppe blieb gesetzt.
-
Urlaub: strengere Zugriffsprüfungen (bei laufenden oder vergangenen Einträgen lässt sich kein anderer Manager mehr eintragen, Löschen und Wiederherstellen richten sich nach dem gespeicherten Eintrag und Wiederherstellen wird wieder geprüft, Urlaube von Vertretungen zählen immer als Konflikt, nur mit Zeitraum und Status, wo sie sonst nicht lesbar sind, Urlaubskontokorrekturen erfordern Schreibrecht); der Resturlaub des Vorjahres wird bei Urlauben über das Ende der Übertragsfrist richtig angerechnet und nach späteren Änderungen neu berechnet; Sonderurlaub zählt bei der Kollisionsprüfung mit; abgelehnte Urlaube erscheinen nicht mehr in Kalendern und Abos; der Kommentar geht nicht mehr per Mail an Vertretungen, entfernte Manager und Vertretungen werden benachrichtigt. Excel-Export: Wochenenden und Feiertage im Urlaub, Halbtage und halbe Arbeitstage werden richtig dargestellt, genehmigte Urlaube haben Vorrang vor solchen in Abstimmung. Automatische Urlaubsbuchung der Zeitberichte: nicht mehr vom Urlaub abgedeckte Tage werden entfernt, eine nicht buchbare Urlaubsaufgabe lässt den Lauf fehlschlagen statt Tage zu überspringen, der nächste erfolgreiche Lauf holt alle seither verpassten Tage nach, gebucht wird nach der Zeitzone des Benutzers. Das Urlaubskonto lädt schneller. Team-Urlaubskalender: für Screenreader lesbar, die gespeicherte Auswahl wird nicht mehr durch einen veralteten Seitenstand überschrieben.
ProjectForge 9.0.6 veröffentlicht
2026-10-14, Tag 9.0.6-RELEASE Nur Quellcode
-
Urlaubsanträge und Urlaubskonto in der neuen Oberfläche
-
Lanes-&-Planes-Schnittstelle für Mitarbeitende und Kostenstellen
-
Datentransfer-Dateien verschlüsselt gespeichert
-
Passwortänderung: Schutz vor Durchprobieren, andere Sitzungen beendet
-
Fix: Deckungsbeitrag zählt nach Buchungsperiode
Überblick
-
Urlaubsanträge: Liste und Formular in die neue Oberfläche umgezogen, mit Balken über den Kalendertagen, die die Tage ohne Vertretung zeigen, einem Jahresfilter zum Vor- und Zurückblättern und dem Resturlaub, der während der Eingabe mitläuft.
-
Urlaubskonto: in die neue Oberfläche umgezogen, mit dem nächsten Jahr in der Statistik und rot markierten Urlaubsanträgen ohne Vertretung.
-
Lanes & Planes: Die aktiven Mitarbeitenden werden mit ihren Kostenstellen, Kostenträgern und ihrem Kreditorenkonto übertragen, abgesichert gegen verdächtig kleine User-Listen und E-Mail-Änderungen; Mitarbeitende haben ein neues Feld Kreditorenkonto.
-
Benutzer:innen: neue Felder alternative und frühere E-Mail-Adressen, durchsuchbar und im Excel-Export.
-
Datentransfer: Dateien im Dateisystem werden komprimiert und können verschlüsselt gespeichert werden (AES-256).
-
Passwörter: Passwort ändern und WLAN-Passwort ändern in der neuen Oberfläche; ein falsches altes Passwort zählt als Fehlanmeldung, und eine Passwortänderung beendet die anderen Sitzungen.
-
Systemverwaltung: Systemstatistik lädt sofort, Kopiervorlagen für die System-Warnmeldung; das Docker-Image basiert auf Java 21.
-
Korrekturen: Deckungsbeitrag nach Buchungsperiode, Jahresfilter der Urlaubsanträge und Verträge, Listen mit veraltetem Filter, Sortierung der Urlaubsliste, abgelehnte Urlaubsanträge im Urlaubsexport, Kostenträger-Cache im Zeitbuchungsformular, Schlüssel der Telefonnummer-Suche und CSRF-Prüfung beim endgültigen Löschen.
Alle Änderungen
-
Mitarbeitende: neues Feld Kreditorenkonto (das DATEV-Konto der bzw. des Mitarbeitenden, z. B. für Reisekosten), auch als Spalte in der Liste und im Excel-Export.
-
Lanes-&-Planes-Schnittstelle
-
Die aktiven Mitarbeitenden werden mit den allgemeinen Kost1 als Kostenstellen, den allgemeinen Kost2 und den Kost2, auf die sie buchen dürfen (über Muster wie 5..02 einschränkbar), als Kostenträger, ihrer Kost1 als Referenz-Kostenstelle, ihrem Kreditorenkonto und ihrem Spitznamen als Kürzel übertragen. Die Nummern werden ohne Punkte übertragen, wie es der DATEV-Export von Lanes & Planes braucht. Die Einstellungen pflegt die Buchhaltung im Konfigurationsparameter „Lanes & Planes“, Aktivierung und API-Key stehen in projectforge.lanesandplanes..
-
Im Konfigurationsparameter können weitere User eingetragen werden, die keine Mitarbeitenden sind (z. B. eine externe Buchhaltung). Sie werden nur mit Name und E-Mail übertragen, werden also nicht deaktiviert, und ihre Rolle und Manager bleiben erhalten. Der Service-Admin und Gastprofile von Lanes & Planes können nicht eingetragen werden: Der Import lässt sie unberührt.
-
Kostenstellen und Kostenträger, die es in Lanes & Planes schon gibt, können mit ihren Namen im Konfigurationsparameter eingetragen werden (aus dem User-Export eingefügt). Sie werden unter diesem Namen übertragen, Lanes & Planes verwendet sie also weiter, statt sie als Dopplung abzulehnen.
-
Eine geänderte E-Mail von Mitarbeitenden wird zurückgehalten (weiter wird die alte übertragen, mit Hinweis im Problem-Dashboard), bis sie in Lanes & Planes geändert und im Konfigurationsparameter bestätigt wurde. Sonst würde Lanes & Planes den User deaktivieren und neu anlegen.
-
Eine verdächtig kleine User-Liste wird nicht übertragen (Lanes & Planes deaktiviert alle nicht übertragenen User): Geprüft wird gegen eine Mindestanzahl und gegen den letzten Push, auch nach einem Neustart von ProjectForge. Ein fehlender Push-Status wird im Problem-Dashboard gemeldet.
-
-
Datentransfer: Im Dateisystem abgelegte Dateien werden komprimiert und können verschlüsselt gespeichert werden (AES-256, Schlüssel in projectforge.files.fileSystemEncryptionKey), damit Backups des Dateisystems sie nicht im Klartext enthalten.
-
Benutzer:innen: neue Felder alternative und frühere E-Mail-Adressen (durch Kommas getrennt, z. B. nach einer Namensänderung), auch durchsuchbar und im Excel-Export.
-
Systemverwaltung: zwei Kopiervorlagen für die System-Warnmeldung (Wartungsarbeiten, neues Release), mit der nächsten vollen Stunde und dem nächsten Release vorbelegt.
-
Passwort ändern und WLAN-Passwort ändern sind Seiten der neuen Oberfläche und zeigen, wann das Passwort zuletzt geändert wurde.
-
Systemstatistik
-
Die Datenbank-Kachel erscheint sofort: Die Zahl der Historierungseinträge und -attribute ist die Schätzung der Datenbank (~) statt einer minutenlangen Zählung.
-
Noch ladende Kacheln zeigen ihre Überschrift und einen Spinner.
-
CPU-Last und System-Load als Balken.
-
-
Urlaubskonto
-
In der neuen Oberfläche; die Statistik enthält jetzt auch das nächste Jahr.
-
Urlaubsanträge mit einem Tag ohne Vertretung sind rot markiert.
-
Ein aus dem Urlaubskonto geöffneter Urlaubsantrag oder Kontokorrektureintrag führt dorthin zurück.
-
-
Urlaubsanträge
-
Liste und Formular in der neuen Oberfläche; Arbeitstage, Resturlaub und die Urlaube der Vertretungen folgen dem Formular während der Eingabe.
-
Das Formular zeigt den Urlaub und die überlappenden Urlaube der Vertretungen als Balken über den Kalendertagen, mit Wochenenden, Feiertagen und den Tagen ohne Vertretung.
-
Die Liste zeigt jeden Urlaubsantrag als Balken über seinen Tagen, die Tage ohne Vertretung rot.
-
Angeboten werden nur die Status, die gesetzt werden dürfen.
-
Ein aus dem Kalender geöffneter Urlaubsantrag führt beim Speichern dorthin zurück.
-
-
Urlaubsanträge
-
Zeitraum und Mitarbeiter stehen immer in der Filterzeile der Liste; der Zeitraum findet jeden Urlaubsantrag, der ihn berührt.
-
Der Zeitraum ist standardmäßig ein Kalenderjahr, die Liste beginnt mit dem laufenden: Jedes eingegebene Datum ergibt sein Jahr, und die Pfeile blättern ein Jahr zurück oder vor. Stattdessen sind auch ein Monat oder ein eigener Zeitraum wählbar.
-
Das Formular zeigt die verfügbaren Urlaubstage auch nach dem gerade bearbeiteten Antrag, rot, wenn sie nicht reichen.
-
-
Docker-Image: basiert auf Java 21 (Eclipse Temurin 21 JRE) statt Java 17. ProjectForge läuft weiterhin ab Java 17.
-
Deckungsbeitrag (Auftragsbuch und Scripte)
-
Buchungssätze zählen im Monat ihrer Satznummer (Buchungsperiode), nicht im Monat ihres Datums: Eine Rechnung vom September, die auf August gebucht ist, zählt jetzt als im August gebucht.
-
Scripte berücksichtigen den laufenden Monat bis heute mit vorläufigen Werten (Zeitberichte und ungebuchte Rechnungen).
-
-
Zeitbuchungsformular: Die Auswahl eines Strukturelements konnte vereinzelt mit "Session/EntityManager is closed" scheitern, während der Kostenträger-Cache neu geladen wurde.
-
Listen
-
Eine Liste kam aus einem Eintrag mit einem veralteten Filter zurück, wenn zuvor auf einen kurz davor verwendeten Filter zurückgeblättert worden war (z. B. ein Jahr zurück und wieder vor).
-
-
Sicherheit
-
Telefonnummer-Suche (/rsPublic/phoneLookup) ist deaktiviert, bis ein eigener Schlüssel in projectforge.phoneLookupKey konfiguriert ist; der bisherige Platzhalter als Vorgabe wird nicht mehr akzeptiert.
-
Endgültiges Löschen prüft das CSRF-Token wie alle anderen schreibenden Aktionen.
-
-
Urlaubsexport
-
Abgelehnte Urlaubsanträge werden nicht mehr exportiert.
-
-
Urlaubsliste: Die Sortierung nach den Spalten Status und Tage hatte keine Wirkung.
-
Jahresfilter
-
Der Jahresfilter der Urlaubsanträge und der Verträge greift wieder; in der neuen Oberfläche wurde er ignoriert.
-
-
Eigenes Passwort oder WLAN-Passwort ändern: Ein falsches altes Passwort zählt als Fehlanmeldung und sperrt weitere Versuche für eine Weile, wie bei der Anmeldung.
-
Eine Passwortänderung (selbst, durch einen Admin oder per Passwort-Zurücksetzen) beendet jetzt auch die anderen offenen Sitzungen des Benutzers, nicht nur die angemeldet gebliebenen Geräte. Die Sitzung, in der das eigene Passwort geändert wurde, bleibt angemeldet.
ProjectForge 9.0.5 veröffentlicht
2026-10-13, Tag 9.0.5-RELEASE QuellcodeJar (SourceForge)
SHA-256 von projectforge-application-9.0.5.jar: 044f60907c25c056a44baf6d457c6b951190ef7fd36f795359bbf044026086a0
-
Urlaub automatisch als Zeitbericht gebucht
-
Adminprotokoll mit Logdatei-Suche, jetzt im System-Dashboard
-
Mein Zugang in der neuen Oberfläche
-
Hängende Cache-Aktualisierungen und Scheduler-Läufe lassen sich beenden
-
Fix: aktuelle Wechselkurse werden wieder vorgeschlagen
Überblick
-
Urlaub: Ein nächtlicher Job bucht vergangene genehmigte Urlaubstage ohne Zeitberichte, einzuschalten in der Konfiguration; ungebuchte Urlaubstage zählen im Monatsbericht und in den Benachrichtigungen wieder als Tage ohne Zeitberichte, getrennt aufgeführt und per Klick buchbar.
-
Konfiguration: Parameter nach Kategorien gruppiert, mit Angabe, wer sie sehen und ändern darf; die bisherigen Urlaubseinstellungen aus projectforge.properties werden einmalig übernommen.
-
Adminprotokoll: ein Tab des System-Dashboards; Suche in den Logdateien der letzten Tage, Kontext jedes Eintrags direkt darunter, anpassbare Tabellen.
-
System-Dashboard: Hängende Cache-Aktualisierungen und Scheduler-Läufe lassen sich beenden, blockierte Datenbankabfragen brechen nach einer Zeitüberschreitung ab, eine fehlgeschlagene Cache-Aktualisierung wird frühestens nach einer Minute wiederholt; der letzte erfolgreiche Lauf eines Jobs wird angezeigt.
-
Mein Zugang: in die neue Oberfläche umgezogen, mit den angemeldet bleibenden Geräten, der Nutzung von Zugangsschlüsseln und längeren GPG- und SSH-Schlüsseln.
-
Benachrichtigungen: neue Regel für Passwörter, die eine einstellbare Anzahl von Tagen nicht geändert wurden.
-
Changelog: die Releases einer Hauptversion mit dem neuesten zuerst.
-
Korrekturen: Vorschläge für Wechselkurse, JCR-Migration in der ausgelieferten Anwendung, Sortierung der Liste der Merlin-Vorlagen.
Alle Änderungen
-
Adminprotokoll
-
Live-Ansicht: Zu jedem Eintrag lässt sich der Kontext aufklappen, die Ereignisse davor und danach im Speicher, alle oder nur die derselben Benutzer:in bzw. desselben Loggers; mit Logger-Spalte.
-
Suche in den Logdateien der letzten Tage nach Text, Zeitraum, Level und Logger-Kategorie (einschließen oder ausblenden), auch für die Tage vor dem Serverstart.
-
Zu jedem Treffer lässt sich der Kontext direkt darunter aufklappen: die Einträge davor und danach, alle oder nur die derselben Benutzer:in bzw. desselben Loggers, mit Blättern zu älteren und neueren. Auch für die Vorkommen einer Störung des System-Dashboards.
-
Die Tabellen der Live-Ansicht und der Logdatei-Suche lassen sich anpassen (Spaltenbreite, Pinnen, Ein- und Ausblenden), pro Benutzer:in gespeichert wie bei allen anderen Listen.
-
-
System-Dashboard
-
Eine hängende Cache-Aktualisierung oder ein hängender Scheduler-Lauf lässt sich beenden und kann danach ohne Neustart sofort wieder laufen.
-
Cache-Aktualisierungen und Scheduler-Läufe warten nicht mehr endlos auf eine Datenbanksperre: Eine blockierte Abfrage bricht nach einer Zeitüberschreitung ab (standardmäßig 60 Sekunden).
-
Nach einer fehlgeschlagenen Cache-Aktualisierung liefert der Cache seine aktuellen Daten und versucht es frühestens nach einer Minute erneut, statt bei jedem Zugriff.
-
-
Genehmigter Urlaub kann automatisch als Zeitbericht gebucht werden: Ein nächtlicher Job bucht die vergangenen Urlaubstage ohne jeden Zeitbericht auf das eingestellte Urlaubs-Strukturelement und den Urlaubs-Kostenträger, nie im Voraus und nie weiter zurück als bis zu seinem letzten erfolgreichen Lauf, ein gelöschter Urlaubs-Zeitbericht wird also nicht erneut gebucht. Finance und Controlling schalten dies in der Konfiguration ein (maximale Anzahl Tage zurück, Urlaubs-Strukturelement und -Kostenträger); die bisherigen Einstellungen in projectforge.properties werden einmalig in die Konfiguration übernommen (eine danach noch gesetzte Property wird ignoriert und bei jedem Start als Störung im System-Dashboard gemeldet, damit sie entfernt werden kann), ungültige Werte werden beim Speichern abgewiesen. Die Konfigurationsliste gruppiert die Parameter nun nach Kategorien und zeigt, wer welchen Parameter sehen und wer ihn ändern darf. Die Statistik der geplanten Jobs merkt sich zudem den letzten erfolgreichen Lauf; nach einem fehlgeschlagenen Lauf zeigt das System-Dashboard, wann der Job zuletzt erfolgreich war.
-
Benachrichtigungen: Eine neue Regel benachrichtigt Benutzer, deren Passwort länger als eine einstellbare Anzahl von Tagen nicht geändert wurde, mit einem Link zum Ändern. Die Benachrichtigung erledigt sich, sobald das Passwort geändert wird.
-
Changelog: Die Releases einer Hauptversion stehen mit dem neuesten zuerst, das eröffnende Release zuletzt, verlinkt oben bei der Hauptversion; auch die Release-Notes eines Updates verlinken darauf.
-
Das Adminprotokoll ist jetzt ein Tab des System-Dashboards; sein eigener Menüeintrag entfällt, alte Links führen auf den Tab.
-
Genehmigte Urlaubstage ohne Zeitberichte zählen im Monatsbericht und in den Benachrichtigungen über fehlende Zeitberichte wieder als Tage ohne Zeitberichte. Der Monatsbericht führt Arbeitstage und Urlaubstage ohne Zeitberichte getrennt auf, ein Klick auf die Urlaubstage öffnet den Dialog zum Buchen mehrerer Tage; Benachrichtigungstexte können alle Tage, nur die Urlaubstage oder nur die übrigen Arbeitstage ohne Zeitberichte aufführen.
-
Mein Zugang
-
In die neue Oberfläche umgezogen, alte Links führen auf die neue Seite. Nach dem Speichern bleibt die Seite offen, eine geänderte Sprache, Zeitzone oder ein geändertes Datumsformat wirkt sofort.
-
Angemeldet bleibende Geräte werden mit Browser, IP-Adresse und letztem Zugriff aufgelistet, das aktuelle Gerät ist markiert; jedes lässt sich einzeln abmelden.
-
Die Nutzung eines Zugangsschlüssels wird als Tabelle der Clients angezeigt (Browser, IP-Adresse, letzter Zugriff, Anzahl der Zugriffe).
-
Die Sprache lässt sich wieder auf die Voreinstellung des Browsers zurücksetzen.
-
Ein leeres Datums- oder Uhrzeitformat nennt die geltende Voreinstellung; die Mobilnummer verweist auf die Einrichtung des zweiten Faktors, wo sie geändert wird.
-
-
Die Migration der Dateien aus dem JCR schlug in der ausgelieferten Anwendung mit "No LoginModule found" fehl.
-
Währungsumrechnung: Beim Anlegen eines neuen Umrechnungskurses oder Ändern des Gültig-ab-Datums werden wieder aktuelle Kurse vorgeschlagen (die Kurs-API war umgezogen).
-
Merlin-Vorlagen: Die Liste lässt sich nach den Spalten Admins, Benutzer und Gruppen sortieren (sie blieb bisher unsortiert).
-
Mein Zugang: Öffentliche GPG- und SSH-Schlüssel dürfen jetzt bis zu 20.000 Zeichen lang sein (bisher 4.096, ein längerer GPG-Schlüssel ließ sich nicht speichern); ein immer noch zu langer Schlüssel wird als Fehler am Feld angezeigt.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.0.4 veröffentlicht
2026-10-11, Tag 9.0.4-RELEASE QuellcodeJar (SourceForge)
SHA-256 von projectforge-application-9.0.4.jar: 47595cb45f18b15f3830463a2177ddfc7d2ccfc3b74f4339c289e50e16cd6d78
-
Benachrichtigungen (experimentell) in der App und per E-Mail
-
System-Dashboard mit Statistik, Scheduler und Caches
-
Scripte in der neuen Oberfläche, auch als Buttons auf ausgewählten Seiten
-
Zeitberichte: keine Überlappungen mehr auf derselben Kost2
-
Fix: von Nutzern eingegebene Texte in Mails nicht mehr als HTML übernommen
Überblick
-
Benachrichtigungen (experimentell): Regeln benachrichtigen in der App (Toast, Banner, Zähler im Menü) und per E-Mail, auch als Kaskade; erste Regeln für fehlende Zeitberichte und verfallende Urlaubstage, dazu manuelle Nachrichten.
-
System-Dashboard: Aus dem Problem-Dashboard wird das System-Dashboard, mit der Systemstatistik und den neuen Tabs Scheduler und Caches; Störungen lassen sich gesammelt bearbeiten, die Kacheln zählen nur offene.
-
Scripte: Liste, Formular und Ausführungsseiten in der neuen Oberfläche mit Code-Editor und Werkzeugleiste; die Ausgabe hat einen eigenen Reiter; ein Script kann als Button auf ausgewählten Seiten erscheinen und erhält deren Filter.
-
Zeitberichte: Buchungen auf derselben Kost2 dürfen sich nicht mehr überlappen; neuer Konfigurationsparameter für Überlappungsgruppen.
-
Rich-Text: Markdown wird formatiert angezeigt und vom Editor übernommen, der jetzt auch Überschriften und Tabellen bietet; auch für die Meldung des Tages und den Hinweis zu KI-Einsparungen.
-
Forecast: Snapshot-Datum für den Stand des Auftragsbuchs an einem Tag, Hinweis zum Plandatum.
-
Listen und Datentransfer: Exporte in einem Menü „Export“; Datentransfer mit Füllstandsbalken, einstellbaren Spalten der Dateitabelle und dem Aktivitätsprotokoll als Reiter.
-
Korrekturen: HTML in Mail-Texten von Nutzern, Umfrage-Mails, stornierte Rechnungen gelten als bezahlt, Umbenennen von Anhängen, Liquiditätseinträge wieder klonbar, Strukturbaum bei gleichzeitigen Änderungen, Projektliste nach Nummer sortiert.
Alle Änderungen
-
Statistiken, Forecast
-
Neues Feld Snapshot-Datum: Der Forecast wird mit dem Stand des Auftragsbuchs dieses Tages berechnet.
-
Der Tooltip des Plandatums zeigt einen Hinweis, den die Finanzbuchhaltung im neuen Konfigurationsparameter „Forecast“ pflegt (formatierter Text mit kleinem Editor).
-
-
Benachrichtigungen (experimentell): Admins und Finanzbuchhaltung können Regeln einrichten, die in der App (Toast, zu bestätigender Toast oder Banner, mit den Stufen Hinweis, wichtig und dringlich, optional als Zähler im Menü) und per E-Mail benachrichtigen, auch als Kaskade (z. B. eine E-Mail, wenn nicht innerhalb von zwei Tagen in der App bestätigt). Erste Regeln: fehlende Zeitberichte und verfallende Urlaubstage; eine manuelle Regel verschickt eine Nachricht auf Knopfdruck. Empfänger:innen sind Gruppen, Benutzer:innen und Mitarbeiter:innen nach Status, standardmäßig nur die Betroffenen. Die Texte sind formatiert und enthalten Variablen wie die Liste der Tage ohne Zeitberichte. Wer eine Benachrichtigung wann bestätigt hat, wird festgehalten. Das Problem-Dashboard zeigt den Zustand der Benachrichtigungs-Jobs. Genehmigte Urlaubstage zählen nicht mehr als Tage ohne Zeitberichte, auch im Monatsbericht.
-
Scripte: Ein Script kann als Button mit Tooltip oben rechts auf ausgewählten Seiten erscheinen, z. B. im Auftragsbuch oder in anderen Listen sowie in den Reitern Forecast und Deckungsbeitrag der Auftragsstatistik. Der Button öffnet die Ausführungsseite des Scripts, und das Script erhält den aktuellen Filter der Seite als Variable pageContext (z. B. pageContext.list() für die angezeigten Einträge).
-
Systemdashboard: neuer Tab „Scheduler“
-
Listet alle geplanten Jobs mit Bereich, Beschreibung, Zeitplan, letztem und nächstem Lauf, Dauer und Status, sortierbar und mit pro Benutzer gespeicherten Spalten wie jede Liste; überfällige und fehlgeschlagene Jobs fallen auf, auch als Kachel in der Übersicht.
-
Die Läufe werden pro Tag gespeichert (fehlgeschlagene und langsame Läufe einzeln) und nach 90 Tagen zu Monaten zusammengefasst.
-
Ein Job kann sofort gestartet werden; ein Lauf wird übersprungen, solange der vorherige noch läuft.
-
-
Systemdashboard: neuer Tab „Caches“
-
Listet alle Caches mit Status, letzter Aktualisierung, Dauer, Verfallszeit und fehlgeschlagenen Aktualisierungen; ein einzelner Cache oder alle Caches lassen sich von Hand aktualisieren.
-
Hängende Cache-Aktualisierungen werden jede Minute erkannt, als Störung gemeldet und unterbrochen; hängende und fehlgeschlagene Caches erscheinen auch als Kachel in der Übersicht.
-
Die Schaltfläche „Alle Caches aktualisieren“ der Systemseite entfällt; der Tab „Caches“ ersetzt sie und aktualisiert alle Caches statt nur einer festen Auswahl.
-
-
Datentransfer: Die belegte Kapazität eines Bereichs wird als farbiger Füllstandsbalken angezeigt, in der Liste und in der Dateiansicht.
-
Massenänderung: Der Dateiname des Excel-Protokolls enthält jetzt den Namen der Entität (z. B. Debitorenrechnungen).
-
Konfiguration: Der Hinweis zu KI-Einsparungen in Zeitberichten und die Meldung des Tages auf der Login-Seite werden mit dem Rich-Text-Editor bearbeitet (fett, kursiv, Listen, Links, Farben).
-
Problem-Dashboard: Die Kennzahlen und die Kacheln der Subsysteme zählen jetzt nur noch die Probleme, die noch angesehen werden müssen. Erledigte, ignorierte und stummgeschaltete Probleme stehen getrennt unter der jeweiligen Zahl, sodass sich die Kacheln sofort ändern, wenn ein Problem bearbeitet wird.
-
Rich-Text: In Markdown geschriebene Texte (z. B. ältere Tooltips und Hinweise) werden formatiert statt mit ihren Steuerzeichen angezeigt und vom Editor direkt übernommen; beim nächsten Speichern werden sie im Rich-Text-Format abgelegt. Als reiner Text eingefügtes Markdown wird ebenfalls umgewandelt. Der Editor bietet jetzt auch Überschriften (Ebene 1 bis 4) und Tabellen.
-
System-Dashboard: Das Problem-Dashboard heißt jetzt System-Dashboard und zeigt in einem eigenen Tab auch die Systemstatistik, die keinen eigenen Menüeintrag mehr hat; alte Links werden weitergeleitet. Die Statistik ist Teil der neuen Oberfläche und zeigt jeden Abschnitt, sobald seine Werte gesammelt sind, statt auf alle zu warten. Speicher, Laufwerke, der Connection-Pool der Datenbank und die Verbindungen zum Datenbankserver werden als Füllstandsbalken angezeigt. Neu hinzugekommen sind Konfiguration und maximale Größe des Pools, Version und Größe der Datenbank, CPU-Last, Prozessoren, physischer Speicher, Betriebssystem, Non-Heap-Speicher, Garbage Collection und Thread-Zahlen.
-
Code-Editor (Scripte): Eine Leiste mit Rückgängig, Wiederholen, Suchen und Ersetzen und Auskommentieren, deren Tooltips das jeweilige Tastaturkürzel nennen, sowie ein Info-Button mit allen Tastaturkürzeln. Die Suche erscheint oben und in der Sprache des Benutzers.
-
Dunkelmodus: Texte werden in schlankerer Strichstärke und geglättet dargestellt und wirken auf dem dunklen Hintergrund nicht mehr übermäßig fett.
-
Datentransfer: Die Spalten der Dateitabelle eines Bereichs lassen sich wie in jeder Liste ein- und ausblenden, verschieben, fixieren und in der Breite ändern; Anordnung und Sortierung bleiben pro Benutzer für alle Bereiche erhalten.
-
Listen: Die Exporte (Excel, PDF, Forecast, Kostenzuweisungen, ics) liegen jetzt in einem Menü „Export“ direkt neben dem Zahnrad; jeder Eintrag zeigt seine Erläuterung direkt im Menü.
-
System-Dashboard: Über die Mehrfachauswahl lassen sich viele Störungen auf einmal auswählen und gemeinsam zur Kenntnis nehmen, erledigen, ignorieren, wieder öffnen, stummschalten oder die Stummschaltung aufheben. Die bisherigen „Probleme“ heißen jetzt „Störungen“.
-
Datentransfer: Das Aktivitätsprotokoll eines Bereichs ist ein eigener Reiter (nach Infos) statt eines Dialogs.
-
Scripte: Die Scriptliste, das Scriptformular, „Meine Scripte“ und die Ausführungsseiten sind Teil der neuen Oberfläche, mit einem Code-Editor mit Syntaxhervorhebung. Die Beschreibungen eines Scripts und seiner Parameter sind Rich-Text (bestehendes Markdown wird beim nächsten Speichern umgewandelt). Ein gespeichertes Script läuft jetzt immer so, wie es gespeichert ist; aus dem Formular werden nur die Parameterwerte übernommen. Direkt ausgeführter Code (ohne gespeichertes Script) läuft jetzt als Kotlin statt als Groovy.
-
Scripte: Die Ausgabe einer Ausführung (Ergebnis, Protokoll) erscheint in einem eigenen Reiter, der nach der Ausführung geöffnet wird. Eine Datei zum Download wird gut sichtbar oben im Ausgabe- und im Ausführungs-Reiter angezeigt.
-
Groovy-Skripte: Mitgeliefert werden nur noch der Groovy-Kern und die Module für Datum, JSON, XML und Templates; die übrigen Module (z. B. Ant, SQL, Swing, Konsole) wurden entfernt.
-
Anhänge: Ein geänderter Dateiname oder eine geänderte Beschreibung wurde nicht gespeichert.
-
Projektliste: Das Sortieren nach der Nummer-Spalte hatte keine Wirkung.
-
Persönliche Box und Mitarbeiterfelder: Der „Mich auswählen“-Knopf zur Auswahl der eigenen Person fehlte.
-
Zeitberichtsliste: Der Hinweis, dass der Filter ein Datum oder Strukturelement braucht, erscheint jetzt hervorgehoben über der Liste statt leicht übersehbar darunter.
-
Debitorenrechnungen: Stornierte Rechnungen und ihre Stornorechnungen gelten jetzt als bezahlt. Sie erscheinen nicht mehr unter dem Filter „unbezahlt“ und werden nicht mehr in die Summen über der Liste (brutto, netto, offen) eingerechnet.
-
Problem-Dashboard: Eine nicht versendbare Mail wird jetzt einmal als Problem des Mailversands gemeldet und nicht mehr zusätzlich als unerwarteter Fehler der Funktion, die sie verschickt hat.
-
Strukturelementliste und Strukturbaum: keine sporadischen internen Fehler mehr, wenn gleichzeitig ein Strukturelement angelegt oder verschoben wird.
-
Anhänge: Lange Dateinamen ohne Leerzeichen werden in der Anhangtabelle umbrochen, statt sie zu verbreitern.
-
Liquiditätsplanung: Einträge lassen sich wieder klonen; der Klon eines wiederkehrenden Eintrags ist ein eigenständiger Eintrag.
-
Mails: Von Nutzern eingegebene Namen, Titel, Dateinamen und Texte werden nicht mehr als HTML übernommen (z.B. in den Mails von Umfragen, Datentransferbereichen, Urlauben und ToDos); im Mail-Text einer Umfrage bleiben nur einfache Formatierungen und Links erhalten.
-
Umfragen
-
Die Links in den Mails führen auf diese Installation statt auf einen fest eingetragenen Server; der Link der Einladung funktioniert wieder.
-
Die Erinnerung vor Fristende geht nur noch an Teilnehmer, die noch nicht geantwortet haben.
-
Der Betreff der Einladung zeigt keine HTML-Tags mehr; Betreff und Text der Mail nach Fristende sind nicht mehr vertauscht.
-
-
Zeitberichte: keine überlappenden Buchungen mehr auf derselben Kost2
-
Zwei Zeitberichte einer Person auf derselben Kost2 (oder, ohne Kost2, auf demselben Strukturelement) dürfen sich zeitlich nicht mehr überlappen, auch nicht bei geteilten Kosten. Bisher ließ sich z. B. ein Urlaub doppelt für dieselbe Zeit buchen, wenn die Kost2 zu keinem Projekt gehörte.
-
Neuer Konfigurationsparameter „Überlappungsgruppen für Zeitberichte“: Gruppen von Kost2-Nummernpräfixen (z. B. „6“ für alle Kost2 6.*), deren Zeitberichte sich nie überlappen; bei geteilten Kosten gilt eine Gruppe wie ein Projekt. Sichtbar für Finanzen und Controlling, änderbar nur für Mitglieder beider Gruppen.
-
Bestehende überlappende Buchungen zeigt der Filter „Nur kollidierte“ der Zeitberichtsliste.
-
-
npm-Sicherheitslücken in projectforge-next und projectforge-webapp behoben: @modelcontextprotocol/sdk, proxy-addr, sharp und source-map-js aktualisiert.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.0.3 veröffentlicht
2026-10-08, Tag 9.0.3-RELEASE Quellcode
SHA-256 von projectforge-application-9.0.3.jar: fbe9999a9a8b919e8c421c6d275da44a408a26c2ed609e5564ea099efc18a2a0
-
Neue Dateiablage in der Datenbank als Ablösung des JCR
-
Kalender: mehrere Tage buchen auch an bereits gebuchten Tagen
-
Korrekturen aus dem Problem-Dashboard
-
Fix: Benutzereinstellungen werden beim Abmelden wieder gespeichert
Überblick
-
Dateiablage: Mit
projectforge.files.store=dbwerden alle Dateien in der Datenbank gespeichert, Dateien des Datentransfers im Dateisystem; bestehende Installationen bleiben bis zur Umstellung beim JCR. -
JCR-Migration: Nach der Umstellung werden die Dateien im Hintergrund kopiert und anhand von Größe und Prüfsumme verifiziert, mit Bericht; Zurückstellen oder Rollback bleiben möglich. Die Systemseite zeigt die aktive Ablage und startet Backup-ZIP und Migration.
-
Backups: Das Admin-Handbuch beschreibt einen Haupt-Dump und einen eigenen Dump der Dateien; das Aufräumen der Backups unterstützt mehrere Präfixe.
-
Kalender: Beim Buchen mehrerer Tage werden auch Tage mit vorhandenen Zeitberichten gebucht, solange sich nichts unzulässig überschneidet; die Vorschau zeigt jede Überschneidung.
-
Datentransfer: Bereiche nach letzter Änderung sortiert, die neueste zuerst.
-
Korrekturen aus dem Problem-Dashboard: Strukturbaum und Listenfilter ohne Sitzung, Feldfehler bei einem Zeitbericht ohne Strukturelement, Rechnungen über die Auftragsnummer auffindbar, weniger unnötige Fehlereinträge im Log.
-
Projekte: Das Ändern der Kost2-Arten eines beendeten Projekts in der Massenänderung wird als Fehler gemeldet, mit dem Grund im Excel-Export.
-
Korrekturen: Benutzereinstellungen beim Abmelden wieder gespeichert, Browser-Zurück in Safari, hohe Firmenlogos auf alten Seiten, breiteres Mail-Layout, Fehlermeldung der E-Rechnungsprüfung, seltener interner Fehler beim Öffnen eines Auftrags.
Alle Änderungen
-
Dateiablage
-
Neue Dateiablage als Ablösung des JCR (Apache Oak): Mit
projectforge.files.store=dbwerden alle Dateien in der Datenbank (Schemapf_files) gespeichert, Dateien des Datentransfers im Dateisystem (Verzeichnisdatatransferim Home-Verzeichnis). Bestehende Installationen bleiben beim JCR, bis aufdbumgestellt wird (siehe Admin-Handbuch). -
Nach der Umstellung auf
dbwerden alle Dateien des JCR im Hintergrund kopiert und anhand von Größe und Prüfsumme verifiziert, mit einem Bericht injcr-migration-report.txtim Home-Verzeichnis; das JCR behält sie, sodass ein Zurückstellen oder ein Rollback auf das vorige Release möglich ist. Eine unterbrochene Migration wird beim nächsten Start fortgesetzt. -
Systemseite: Die Karte „Dokumenten-Repository (JCR)“ zeigt die aktive Ablage und startet das JCR-Backup-ZIP und die Migration.
-
Backups: Das Admin-Handbuch beschreibt zwei Dumps, den Haupt-Dump ohne das Schema
pf_filesund einen eigenen Dump der Dateien; das Aufräumen der Backups akzeptiert mehrere kommagetrennte Präfixe und räumt jede Backup-Serie für sich auf.
-
-
Kalender, mehrere Tage buchen: Ein bereits gebuchter Tag wird ebenfalls gebucht, wenn sich der neue Zeitbericht nicht unzulässig mit einem vorhandenen überschneidet (eine durch geteilte Kosten erlaubte Überschneidung ist in Ordnung); die Vorschau zeigt jede Überschneidung und ob sie erlaubt ist.
-
Datentransfer: Die Liste der Bereiche ist standardmäßig nach der letzten Änderung sortiert, die neueste zuerst.
-
Probleme aus dem Problem-Dashboard
-
Strukturbaum und Listenfilter schlagen ohne Sitzung nicht mehr fehl.
-
Ein Zeitbericht ohne Strukturelement zeigt einen Feldfehler statt eines Serverfehlers.
-
Die Urlaubsliste ist nach der Spalte Modus sortierbar.
-
Rechnungen werden über die Nummer ihres Auftrags gefunden.
-
Keine unnötigen Fehlereinträge im Log mehr für ungespeicherte Aufträge, eine ungültige Suchsyntax (jetzt eine Warnung) und einen systemischen Ausfall der Kalenderabonnements (höchstens einmal am Tag protokolliert).
-
-
Alte Seiten: Ein hohes Firmenlogo wird in der Höhe begrenzt und verdeckt keine Teile der Anwendung mehr.
-
Mails: breiteres Layout; Feldnamen in der Änderungshistorie werden nicht mehr buchstabenweise umbrochen.
-
Projekte: Das Ändern der Kost2-Arten eines bereits beendeten Projekts in der Massenänderung ist ein Fehler, statt stillschweigend übersprungen zu werden; der Excel-Export der Massenänderung zeigt die geänderten Kost2-Arten und listet fehlgeschlagene Einträge mit ihrem Grund. Das Formular eines beendeten Projekts zeigt seine vorhandenen Kostenträger angehakt und beendet.
-
Safari: Browser-Zurück aus einem Eintrag führt wieder zur Liste, statt sie zu überspringen und auf einer früheren Seite zu landen.
-
Geänderte Benutzereinstellungen (z. B. Listenfilter und Spaltenlayouts) werden beim Abmelden wieder gespeichert, statt verloren zu gehen.
-
E-Rechnungsprüfung: Eine E-Rechnung, deren Zahlbetrag nicht zu ihren Positionen passt, wird mit diesem Fehler angezeigt statt mit „keine E-Rechnungsdaten gefunden“.
-
Aufträge: Das Öffnen eines Auftrags konnte in seltenen Fällen mit einem internen Fehler abbrechen.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.0.2 veröffentlicht
2026-10-06, Tag 9.0.2-RELEASE Quellcode
-
Kalender: mehrere Tage auf einmal buchen
-
Aufträge: weitere Ansprechpartner:innen statt fester Rollen
-
Seiten mit Grafiken als anordenbare Kacheln
-
Schnellere Berechnung von Forecast und Deckungsbeitrag
-
Projektliste: Spalten zur letzten Aktivität
Überblick
-
Kalender: mehrere Tage auf einmal buchen, z. B. einen Urlaub oder eine Abwesenheit für Kolleg:innen; Wochenenden, Feiertage und gebuchte Tage werden übersprungen, halbe Arbeitstage anteilig gebucht.
-
Aufträge: eine Ansprechpartner:in und beliebig viele weitere Ansprechpartner:innen statt Projektleitung, Bereichsleitung und Key-Account-Management; sie erhalten denselben Zugriff und die Änderungsmail.
-
Grafiken: Seiten mit Grafiken zeigen sie als Kacheln, die sich anordnen, in der Größe ändern und ausblenden lassen, gespeichert pro Benutzer.
-
Statistiken: Forecast und Deckungsbeitrag deutlich schneller berechnet; die Forecast-Analyse eines Auftrags öffnet sich aus den Forecast-Tabellen in einem Dialog.
-
Projektliste: sortierbare Spalten für die letzte Zeitbuchung, das letzte Auftragsdatum und die letzte Aktivität, um beendete Projekte zu erkennen.
-
Problem-Dashboard: Ein Klick auf eine Kennzahl zeigt die gezählten Probleme; die Mail-Kachel zeigt das Ergebnis der letzten Mail; fehlschlagende Kalenderabos meldet die Fehler-Sammelmail.
-
Listen: Das Suchfeld erhält beim Laden den Fokus; Statistikseite und Problem-Dashboard unter neuen URLs mit Weiterleitung.
-
Korrekturen: Ein geklonter Zeitbericht behält seinen Benutzer, Suchbegriffe in Zellen mit JIRA-Links hervorgehoben, keine veralteten Frontend-Dateien im Release-Jar.
Alle Änderungen
-
Projektliste: Spalten für die letzte Zeitbuchung, das letzte Auftragsdatum und die letzte Aktivität (das spätere von beiden), sortierbar, um vermutlich beendete Projekte zu erkennen.
-
Problem-Dashboard: Ein Klick auf eine Kennzahl (neue Probleme, Regressionen, externe Systeme usw.) zeigt genau die gezählten Probleme.
-
Seiten mit Grafiken (Statistiken, Liquiditätsvorschau, Rechnungen, Meine Statistiken): Grafiken als Kacheln, per Drag & Drop anzuordnen, in Stufen in der Größe zu ändern und auszublenden; die Anordnung wird pro Benutzer gespeichert.
-
Kalender: mehrere Tage auf einmal buchen, z. B. einen Urlaub oder eine Abwesenheit für Kolleg:innen; Wochenenden, Feiertage und bereits gebuchte Tage werden übersprungen, halbe Arbeitstage anteilig gebucht, Vorlagen, zuletzt verwendete Zeitberichte und die Urlaube der gebuchten Person können übernommen werden (Urlaubs-Strukturelement und -Kost2 konfigurierbar über projectforge.timesheet.vacation.taskId/kost2).
-
Statistiken: Eine Pille hinter der Auftragsnummer in den Forecast-Tabellen öffnet die Forecast-Analyse des Auftrags in einem Dialog, ohne die Tabelle zu verlassen.
-
Listen: Das Suchfeld erhält beim Laden der Seite den Fokus (nicht auf Touch-Geräten).
-
Aufträge: eine Ansprechpartner:in und beliebig viele weitere Ansprechpartner:innen statt Projektleitung, Bereichsleitung und Key-Account-Management (bestehende Einträge werden übernommen, die alten Felder bleiben in der Datenbank). Weitere Ansprechpartner:innen haben denselben Zugriff auf den Auftrag und seine Rechnungen wie die Ansprechpartner:in, und die Änderungsmail geht jetzt auch an sie und an alle, die den Auftrag bisher bearbeitet haben.
-
Statistiken: Forecast und Deckungsbeitrag werden deutlich schneller berechnet; der Deckungsbeitrag wird pro Projekt zwischengespeichert.
-
Konfiguration der Deckungsbeiträge: Ein doppelt zugeordneter Kostenträger wird als Fehler markiert.
-
Kostenträger: Die Kostenart wird in Liste und Export nur für Kundenkostenträger (4.x und 5.x) angezeigt, wie im Monatsbericht.
-
Problem-Dashboard: Die Mail-Kachel zeigt das Ergebnis der zuletzt gesendeten Mail (unbekannt, OK, Versand fehlgeschlagen oder Mailserver nicht erreichbar).
-
Fehlschlagende Kalenderabos senden keine eigene Mail mehr an die Administration und die Feedback-Adresse; die Fehler-Sammelmail meldet sie.
-
Die Statistikseite liegt jetzt unter /next/finance/statistics, das Problem-Dashboard unter /next/problemDashboard; alte Links werden weitergeleitet.
-
Ein geklonter Zeitbericht (z. B. im Kalender gezogen) behält seinen Benutzer, wenn der angemeldete Benutzer für ihn buchen darf.
-
Suchbegriffe werden auch in Listenzellen mit JIRA-Links hervorgehoben (Auftragstitel und -referenz, Strukturelement, Zeitbericht, HR-Planung).
-
Das Release-Jar enthält keine veralteten Frontend-Dateien früherer Builds mehr.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.
ProjectForge 9.0.1 veröffentlicht
2026-10-06, Tag 9.0.1-RELEASE Nur Quellcode
-
Problem-Dashboard: Probleme als führende Kennzahl
-
Projektstatus in der Massenänderung
-
Fix: ICS-Push des Gateways liefert alle Kalender
-
Fix: nächtliche Neuindizierung bei nicht aktiven Plugins
Überblick
-
Problem-Dashboard und Fehler-Sammelmail: Probleme statt Vorkommen als führende Kennzahl, Zahlen mit Tausendertrennzeichen; Subsystem-Kacheln zählen nur offene Probleme.
-
Projekte: Der Status ist in der Massenänderung änderbar.
-
Gateway: Der ICS-Push liefert wieder alle Kalender eines Benutzers und erzeugt jeden Teamkalender nur einmal pro Lauf.
-
Korrekturen: Die nächtliche Neuindizierung scheitert nicht mehr an Tabellen nicht aktiver Plugins, lange Werte sprengen keine Mail-Tabellen mehr, keine unnötigen Fehlereinträge beim Speichern von Aufträgen.
Alle Änderungen
-
Problem-Dashboard und Fehler-Sammelmail: Probleme statt Vorkommen als führende Kennzahl, damit ein häufiges Problem nicht mehr alle anderen verdeckt; Zahlen mit Tausendertrennzeichen.
-
Der Status von Projekten ist in der Massenänderung änderbar.
-
Der ICS-Push des Gateways erzeugt jeden Teamkalender nur noch einmal pro Lauf.
-
Der ICS-Push des Gateways lieferte pro Benutzer nur den ersten Kalender.
-
Eine Subsystem-Kachel des Problem-Dashboards zählt nur offene Probleme, wie die Liste dahinter.
-
Lange Dateinamen und Werte schieben Tabellen nicht mehr über die Mail-Karte hinaus.
-
Die nächtliche Neuindizierung der Suche scheitert nicht mehr an Tabellen nicht aktiver Plugins.
-
Keine unnötigen Fehlereinträge mehr im Log beim Speichern von Aufträgen.
ProjectForge 9.0: neues Frontend, Wicket abgelöst, alle Bibliotheken aktuell
2026-10-06, Tag 9.0.0-RELEASE QuellcodeJar (GitHub)Jar (SourceForge)Docker
SHA-256 von projectforge-application-9.0.0.jar: 1289b10a87ef77d5f25ea6e363d809fe894d661a60b8ccca7733450362dce5cb
-
Neues Frontend projectforge-next: alle Seiten migriert, Wicket entfernt
-
Problem-Dashboard und Fehler-Sammelmails für den Betrieb
-
Diagramme und Kennzahlen: Auftragsstatistik, Deckungsbeiträge, Forecast
-
E-Rechnungen (XRechnung, ZUGFeRD) und Anbindung an Identity Provider
-
Robuste Schnittstellen zu externen Systemen
-
Aktueller Stack: Spring Boot 4.1, Hibernate 7.4, Next.js 16
Überblick
-
Neues Frontend projectforge-next: alle Seiten migriert, darunter Kalender, Zeitberichte, Auftragsbuch, Rechnungen, Strukturbaum, Zugriffsrechte, Monatsbericht, Liquiditätsplanung und Administration. Das klassische Wicket-Modul wurde entfernt.
-
Problem-Dashboard: Log-Ereignisse werden klassifiziert und zu Problemen mit dauerhaftem Status zusammengefasst, mit Links in den Log-Viewer, JSON-Export für eine KI-gestützte Analyse und priorisierten Fehler-Sammelmails statt einer Mail pro Fehler.
-
Diagramme und Kennzahlen: Auftragsstatistik mit Budget-Szenario, Deckungsbeiträge, Forecast-, Fakturierungs- und Nettosummen-Diagramme mit Vorjahresvergleich, Fakturierungsquote und Fehlerzahlen in der Systemstatistik.
-
Robuste Schnittstellen: Timeouts, Verbindungspools, begrenzte Sync-Threads und Sync-Statistiken für LDAP, Identity Provider, iCal, SMS, Sipgate und das Gateway; ein nicht erreichbares System bricht schnell ab statt zu blockieren, fehlschlagende Kalenderabos werden in wachsenden Abständen wiederholt.
-
E-Rechnungen: XRechnung- und ZUGFeRD-Export von Ausgangsrechnungen, PEPPOL-Validierung, Stornorechnungen und ein E-Rechnungs-Prüfer.
-
Identity Provider: Synchronisation von Benutzern, Gruppen und Passwörtern mit Authentik oder Keycloak (Modul projectforge-idp).
-
Finanzen: wiederkehrende Liquiditätseinträge, DATEV-Import von Eingangsrechnungen, Gehaltsimport, Währungsumrechnung mit online ermittelten Wechselkursen.
-
Technologie: Spring Boot 4.1, Spring 7, Hibernate 7.4, Hibernate Search 8.4, Tomcat 11, Kotlin 2.3, Next.js 16, React 19, TanStack Table.
Alle Änderungen
ProjectForge 9.0 ist ein großes Update. Die klassische Wicket-Oberfläche wurde durch projectforge-next ersetzt, ein neues, mit Next.js und React gebautes Frontend, und alle Bibliotheken wurden auf den aktuellen Stand gebracht. Dazu kommen ein Problem-Dashboard für den Betrieb, viele neue Diagramme mit Kennzahlen, robuste Schnittstellen zu externen Systemen, E-Rechnungen und eine Anbindung an Identity Provider. Die Entwicklungs-Builds bis dahin sind im Changelog als 8.2-Snapshots aufgeführt.
Großes Update - Die klassische Wicket-Oberfläche ist entfernt: alle Seiten laufen in projectforge-next, der einzige Login ist /next/login. Dieses Release fasst alle 8.2-Snapshot-Builds zusammen.
Vor dem Update - Die Datenbank sichern; ihr Schema wird beim ersten Start automatisch migriert.
-
projectforge-next
-
Neues, mit Next.js und React gebautes Frontend mit hellem und dunklem Design, kompakter Navigation oben und einer Schnellsuche im Menü.
-
Tabellen mit Spaltenfiltern, Fixieren, Umsortieren, gespeicherten Layouts und Filterfavoriten; Mehrfachauswahl und Massenänderung für viele Entitäten.
-
Login mit Zwei-Faktor-Authentifizierung und Passwort-Reset unter
/next/login; Angemeldet bleiben mit einem Token pro Gerät.
-
-
E-Rechnungen
-
XRechnung-Export und ZUGFeRD-PDF mit eingebettetem XML, PEPPOL-Validierung, Rechnungsanhänge im Export eingebettet.
-
Stornorechnungen und ein E-Rechnungs-Prüfer für ZUGFeRD-/XRechnung-Dateien.
-
-
Anbindung an Identity Provider (Modul projectforge-idp): Benutzer, Gruppen und Passwörter werden mit Authentik oder Keycloak synchronisiert, einschließlich WLAN-Passwort-Hashes.
-
Problem-Dashboard
-
Log-Ereignisse werden an der Aufrufstelle klassifiziert und in der Datenbank zu Problemen mit dauerhaftem Status zusammengefasst.
-
Dashboard mit Kacheln je Subsystem, Links in den Log-Viewer, Suche der Vorkommen eines Problems in den Log-Dateien und Export als JSON für eine KI-gestützte Analyse.
-
Priorisierte Fehler-Sammelmails je Zielgruppe statt einer Mail pro Fehler; frühe Sammelmail bei neuen Sicherheits- und Datenproblemen.
-
-
Diagramme und Kennzahlen
-
Auftragsstatistik mit eigenem Filter, Diagrammen, Datentabellen, Budget-Szenario und Warnungen vor verlorenen Budgets.
-
Deckungsbeiträge im Auftragsbuch, Forecast-Diagramme, Nettosummen-Diagramme der Ausgangsrechnungen und Rechnungsstatistik mit Vorjahresvergleich.
-
Fakturierungsquote als Diagramm und in Meine Statistiken; Fehlerzahlen in der Systemstatistik.
-
-
Wiederkehrende Serien in der Liquiditätsplanung.
-
Adressimport und -export als vCard und aus Freitext, mit Vergleichsansicht und Warnung vor Dubletten.
-
Eingangsrechnungen aus DATEV importierbar, mit Währung und online ermittelten Wechselkursen.
-
Gateway für den externen Datentransfer mit Delta-Sync, CardDAV-Favoriten und öffentlichem Heartbeat.
-
ICS-Import von Team-Terminen mit Vorschau der Änderungen.
-
Changelog mit News, Suche und Hervorhebung unter
/next/changelog, auch auf Deutsch.
-
Alle Seiten nach projectforge-next migriert, darunter Kalender, Zeitberichte, Auftragsbuch, Ausgangs- und Eingangsrechnungen, Strukturbaum, Zugriffsrechte, Monatsbericht, Liquiditätsplanung, DATEV- und Gehaltsimport, HR-Planung, Gantt-Diagramme und Administration; Links und Lesezeichen der klassischen Seiten führen auf die neuen.
-
Konfigurierbare Kundengruppen und Geschäftsbereiche als Filter für Zeitberichte, Rechnungen, Projekte und Aufträge.
-
Strukturelement-Auswahl mit zuletzt verwendeten Einträgen und Favoriten; JIRA-Issue-Links in Listen und Formularen.
-
Serverseitiges Blättern in Auftrags- und Rechnungslisten; gelöschte Einträge können wiederhergestellt werden.
-
Robuste Schnittstellen
-
Timeouts und gemeinsame Verbindungspools für LDAP, Identity Provider, iCal, SMS, Sipgate und das Gateway, je Schnittstelle konfigurierbar.
-
Ein nicht erreichbares oder zu langsames System bricht schnell mit einer Warnung ab statt zu blockieren; Sync-Läufe nutzen begrenzte Threads statt eines neuen Threads pro Auslöser.
-
Fehlschlagende Kalenderabos werden in wachsenden Abständen wiederholt und nach 90 Tagen deaktiviert.
-
Sync-Statistiken mit Laufzeiten und Anzahlen je Lauf, angezeigt in der Systemstatistik.
-
-
Auftragsbuch und Rechnungen frieren nicht mehr ein, wenn zwei Caches gleichzeitig aktualisiert werden.
-
Viele N+1-Abfragefluten beseitigt; große ID-Listen bleiben unter dem Limit der Datenbank für Bind-Parameter.
-
Abonnierte Kalender, der MS-Project-Export von Gantt-Diagrammen, die Word-zu-PDF-Konvertierung und die LDAP-Synchronisation repariert.
-
CSRF-Schutz und vollständige Feldvalidierung für die REST-Aufrufe; Zugriffsprüfungen für alle REST-Endpunkte, abgesichert durch einen Architekturtest.
-
Sicherheitsreview der Filterkette: vertrauenswürdige Proxys, Ermittlung der Client-IP, Drosselung, sichere Weiterleitungs-URLs.
-
2FA für sensible Seiten erforderlich; gelöschte Gruppen gewähren nie Zugriffsrechte.
-
Modul projectforge-wicket mit allen klassischen Seiten, nur von Wicket genutzten i18n-Schlüsseln und nicht mehr benötigten Bibliotheken.
-
AG Grid (ersetzt durch TanStack Table), react-scripts (ersetzt durch Vite) und JAXB.
-
Alte XML-Benutzereinstellungen werden in den JSON-Speicher migriert.
-
Spring Boot 4.1, Spring 7, Hibernate 7.4, Hibernate Search 8.4, Tomcat 11.
-
Kotlin 2.3, JUnit 6, Gradle 9.8, Next.js 16, React 19, TanStack Table, Vite und Vitest.
-
Versionen werden als X.Y.Z nummeriert und von einem Release-Skript gebaut, die Version wird an einer Stelle gesetzt.
Die aktuellen Binaries gibt es auf GitHub, Sourceforge und Docker Hub.