TopLogic - the automated application engine
  • Releases
  • Dokumentation
  • Github
  • Discord
  1. Home
  2. Releases
  3. TL_7.9.6
  4. #28698

7.9.6
TopLogic Release

2025-08-06

Verbesserung

Wichtig
#28593
Baumselektions-Modell mit Teilbaum-Selektionslogik
#28695
Selektionsfilter für (Tree-)tables und -grids im Layout-Editor einstellen
#28704
Optimierter Zugriff auf Tabelle FLEX_DATA für manche DBs
Detail
#28613
"DefaultFor" Konfigurationsoption im "advanceProcess"-Template für BPE
#28679
Dynamische Labels für FormTableDefinition
#28705
Formlar-Dialoge bei Cancel schließen
#28712
Test kann einstellen ob Warnings zu Fehlschlag führen
Kleinigkeit
#28588
Option, Tabellen in Formularen als nicht selektierbar zu markieren

Fehlerbehebung

Wichtig
#28673
Sicherheitslücke in commons-beanutils (CVE-2025-48734)
#28675
Opening Excel-Scripts in Script Recorder fails when starting from command line
#28676
Absicherung von Kafka-Client-Konfiguration gegen SSRF und File-Reads (CVE-2025-27817)
#28684
DoS-Sicherheitslücke in Apache Commons FileUpload (CVE-2025-48976)
#28692
ClassCastException in der ActiveTaskComponent
#28700
Sicherheitslücke bei Workflow-Übergängen - Unautorisierte Bearbeitung nach Task-Abschluss
#28739
TL-Script Methode filterPermission darf nicht zur Compilezeit ausgewertet werden
Detail
#28331
Falsche Update-Typ-Erstellung in tUpdate führt zu ignorieren von Hidden-Attribut-Änderungen
#28617
Bug: Post-Create-Actions fehlen bei Prozess-Start ohne Prüfung
#28640
Mandatory Multiline Felder haben keinen blauen Strich
#28665
Berechnete Attribute werden bei Tabellenänderungen nicht aktualisiert
#28666
Fehlender DisplayContext nach BinaryDataSource-Conversion
#28667
Pipe closed Fehler beim Mail-Versand durch doppeltes Rendering von Inhalten ohne EncodingAware-Interface
#28671
ExcelWriter-Methoden fehlen
#28686
REST-Routing: Kürzere Pfade werden vor längeren Pfaden priorisiert und verursachen falsches Route-Matching
#28690
Anlegen in Währungsadministration hat falsche Kommandogruppe
#28698
Ausführbarkeitsregel wird auf gelöschtem Objekt geprüft
#28706
Formulartabellen überschreiten Container-Breite
#28707
Falsches Dirty-Handling im SelectTransitionDialog (BPE)
#28724
Selektionsfilter darf nicht auf gelöschten Objekten ausgewertet werden
#28726
Unique-Constraint-Violation bei mehrfacher Anwendung des MoveObjectsProcessor
Kleinigkeit
#28458
Falsche Abfrage, ob Komponente Multi-Selektion unterstützt
Fehlerbehebung

Detail

#28698

Ausführbarkeitsregel wird auf gelöschtem Objekt geprüft

ContextMenuDeleteCommand

Wenn man ein Löschkommando ohne Bestätigungsdialog mit einer Ausführbarkeitsregel, die auf das zu löschende Objekt zugreift, aus dem Kontext-Menü aufruft, dann erzeugt das einen Fehler, weil die Ausführbarkeitsregel nacht der Löschung noch einmal auf dem dann gelöschten Objekt ausgewertet wird.

Analyse

Kommandos im Kontextmenü sind fest an das Objekt gebunden, auf denen das Kontext-Menü geöffnet wurde. Die Ausführung eines Kommandos im Kontextmenü schließt zwar das Kontext-Menü, aber das Schließen wird vom Browser-Window-Control bis zur abschließenden Validierung des Kommandos verzögert. Damit bleiben auch alle Kommndos im Kontextmenü bis zur abschließenden Validierung in der Command-Model-Registry registriert. Wenn man Pech hat, dann wird die Command-Model-Registry in der abschließenden Validierung vor dem Browser-Window-Control validiert und wertet die Ausführbarkeitsregeln noch einmal auf dem jetzt gelöschten Objekt aus (was den Crash verursacht).

Lösung

Beim Schließen eines Popup-Dialogs muss dieser sofort abgemeldet werden, damit auch die in ihm enthaltenen Kommandos aus der Command-Model-Registry abgemeldet werden. Nur das letztendliche Entfernen von der UI kann bis zur endgültigen Validierung des Browser-Window-Controls verzögert werden.

Test

  • Tabelle mit Löschbefehl auf den Zeilen konfiguriern.
  • Rückfrage für den Löschbefehl ausschalten.
  • Ausführbarkeitsregel für den Löschbefehl konfigurieren, die z.B. anhand des Namens des Objektes entscheidet, ob es gelöscht werden kann oder nicht.
  • Löschbefehl über das Kontext-Menü der Tabelle ausführen.
  • Es darf kein Fehler aufgrund eines Zugriffs auf ein gelöschtes Objekt auftreten.
  • Get Started
  • Github
  • Discord
  • Das Unternehmen hinter TopLogic
  • Softwareentwicklung heute
  • Kontakt

© Copyright – Business Operation Systems GmbH

  • top-logic.com
  • Nutzungsbedingungen
  • Impressum
  • Rechtlicher Hinweis
  • Datenschutz
  • EN
  • Login