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

7.6.0
TopLogic Release

2023-09-15

Verbesserung

Wichtig
#27105
Dynamisches Abonnieren von Modell-Events durch UI-Elemente
#27174
Komponenten sollen benötigte Model Events abonnieren
#27185
TopLogic als Open-Source bereitstellen
#27189
Performance: Viele Anfragen an FLEX_DATA beim Löschen großer Mengen von Fachobjekten
#27195
Modell-Editor: Unter-Strukturierung von Modulen
#27247
CRUD-Sichten One-Click definieren
#27263
Anzeige von Lizenzinformationen für alle Nutzer
#27313
Formattierung von Werten in berechneten Tabellenspalten
#27321
HTML-Rendering-Templates
#27327
TL-Script: Benannte Parameter
#27330
DropDown mit Tooltip
#27332
Templates für komplette Anwendungssichten
#27339
Sichten mit Dokumentenordner in-app konfigurieren
#27351
TL-Script: Unterstützung für Binary-Data
#27378
Links mit benutzerdefiniertem Label
#27411
Smart Startup/Shutdown
#27431
App-Archetype nach MavenCentral deployen
#27488
TL-Script: Funktionen zum Übersetzen
Detail
#23724
Dialoge durch Klick auf Hintergrund schließen
#27114
TableModel: Optimiertes Einfügen vieler Objekte
#27224
Formulare über HTML-Templates rendern
#27232
Deklaration von Kommandos / Buttons auf Dialogebene
#27248
Icons/Cliques für Knöpfe/Dialoge wenn möglich mit Theme-Variablen vorbelegen
#27272
Standardwert über Sequenz für zahlenwertige Attribute
#27274
Header von Objektanlagedialog customizen
#27276
Konstanter Standard-Wert für Icon-Attribute
#27284
Build: Einfluss auf den "Build-Timestamp" nehmen
#27304
Listeinträge in deklarativen Formularen zuklappen
#27320
Layout-XML: Nutzung von Template-Parametern bei inneren Templateaufrufen
#27329
Tooltips über HTML Templates rendern
#27333
LayoutEditor: Hinweistext bei leerer Kachelliste anpassen
#27334
Header für Bearbeitung der Antwort eines Open-API Call verfügbar machen
#27336
TL-Script Funktion um eine gewisse Zeit zu warten
#27338
Fehlende Fehlermeldung bei Verwendung von `attribute` bei Referenzen
#27347
Deklaration von ThemeVar in Icons Klassen verschieben
#27350
Tabellen über HTML Templates rendern
#27354
TabBar HTML Template deklarieren
#27358
ButtonComponent HTML Template deklarieren
#27365
Default-Selektion basierend auf der letzten (aktuellen) Selektion wählen
#27380
Bulk-Löschung von Fachobjekten
#27384
Formularelement "Objekte": Als Nur-Lesen anzeigen
#27406
Module außerhalb von tl-engine aus Dependency-Management von tl-parent-all entfernen
#27409
Collapsible und DialogWindow Template deklarieren
#27412
Bulk-Dependency-Update 2023/06
#27413
CKEditor auf v4.21.0 updaten
#27442
Lucene aktualisieren auf 8.11.2
#27452
Button-Konfigurationen standardmäßig zusammenklappen
#27462
Selektion in der Grid verhindern wenn die bearbeitete Zeile Fehler hat
#27468
Application-Scripting: LayoutComponent's nur aufgelösen wenn sie sichtbar sind
#27474
Einfache Installationsmethode mit Docker
#27475
Standard Tooltip Design aktualisieren
#27476
InfoService neu mit Zeitstempel und unterschiedlichen CSS Klassen
#27494
Formulareditor zur Ansicht öffnen
#27498
Bei allen explizit gestarteten Threads ungefangene Exceptions loggen
#27518
Modellbasierte Expertensuche soll den vollen Platz benutzen
#27519
Tabellen-Footer über HTML Templates rendern
#27535
Dual-Lizensierung in Source-Files anzeigen
#27538
Dokumentation in die Anwendungen übernehmen

Fehlerbehebung

Wichtig
#27369
Check-Changed-Dialog (viel) zu klein
#27388
Keine Anzeige des Fehlertextes in Kompositionstabellen
#27407
Selektion der Grid verschwindet bei F5
#27408
AbstractFlexDataManager loggt Warnung beim mehrfachen Laden des selben Objektes
#27446
Falsche Lizenzanzeige für die TopLogic-Module in der Lizenzübersicht
#27471
In-app Konfiguration von Button-Spalten
#27543
Wenn für ein Layout keine englische I18N hinterlegt wurde, wird technische ID exportiert
#27546
Dokumentation exportiert Dateien mit Leerzeichen am Dateiende, was Windows nicht erlaubt
Detail
#25608
Die Formular-Preview unterscheidet sich von ihrer Produktivsicht
#25706
Kein Export von HTML-Attributen nach Excel möglich
#26912
Datei-Upload mit ScriptingRecorder aus dem Dateisystem nicht möglich
#27230
Befehlsfreigabedienst: Ausnahmeregel funktioniert nicht
#27268
<pre>-formattierter Text kollabiert in HTML-Feldern zu einer Zeile
#27275
I18N-String als Namensattribut liefert Fehler
#27306
Optionprovider aktualisieren berechnete Wertvorschläge weiterhin nicht
#27310
Theme-Editor: Es kann kein unabhängiges Theme erstellt werden
#27311
Theme-Editor: Dialog "Neues Stylesheet" sieht defekt aus
#27312
Applikationstests: Keine Aufzeichnung von Eingaben in I18N-String-Attributen in Grid möglich
#27326
Speicherloch: Persönliche Konfiguration wird nicht richtig abgeräumt
#27335
Fehler bei Dokumentenattribut in Kompositionstabelle
#27340
Administration: Wartungsmodus funktioniert nicht richtig
#27341
TL-Script: NPE, wenn reguläre Ausdrücke auf "null" ausgewertet werden
#27343
LayoutEditor: Komponenten-Kanal-Auswahl für Dialog-Öffner-Buttons falsch
#27344
Unerwünschtes Inlinen von Properties beim Erstellen einer neuen App
#27345
FolderComponent ohne Modell führt zu Fehlern
#27349
Verschwindene Design-Knöpfe in Kacheln
#27352
TL-Script: Falscher Hash-Code für JSON-Objekte
#27364
Scheduler: Task-Ausführung schlägt bei längeren Ergebnissen fehl
#27379
Open API Service: Abfrageparameter vom Typ Datum funktionieren nicht
#27381
Fehlerhafte Vorbelegung im Chart-JS Template
#27385
Fehlerhafte Berechnung der Sort-Order in Referenzen
#27393
Baum - Tabellen: Selektion von mehrfach vorkommenden Zeilenobjekten expandiert Teilbäume / wählt falsche Zeile
#27397
GridComponent: Zeilenwechsel bei Fehlern möglich
#27400
ResKey: Fehlendes Quoting von nicht-primitiven Argumenten
#27402
Setzen des Wertes einer geordneten Assoziation führt ggfs. zu NullPointerException
#27403
Synthetische `UpdateChainLink`-Kette des `KBDataProducerTask`führt ins nichts
#27414
ScriptingRecorder loggt Error beim Übersetzen
#27424
"Container" für neue Grid-Zeile nicht mandatory, aber versteckte NPE, wenn Wert gelöscht wird
#27427
Potentielle NullPointerException beim Sortieren der Ergebnisse der Schnellsuche
#27429
Assertion-Error, wenn man inkompatiblen Wert in ComplexField setzt
#27430
NPE im Script-Recorder, beim Speichern des Scripts
#27433
GanttChartExporter nutzt verwundbare Bibliothek JTidy unnötigerweise
#27434
HttpUnit nutzt verwundbare Bibliothek JTidy
#27439
Schnellsuche: Nullpointer Exception bei Klick mit GUI Inspektor auf Textfeld
#27440
Schnellsuche: Suche nach Phrasen und Termen mit (Lucene-) Steuerzeichen funktioniert nicht
#27450
Anzeige des "Vorlagen" Feldes im Formulareditor führt zu Fehlern
#27451
Label-For defekt
#27461
Verwerfen beim DirtyHandling mit mehreren Editoren nicht möglich
#27463
Boolean-Mandatory-Felder nicht mehr dreiwertig
#27464
Benutzerhistorie aktualisiert sich nicht
#27478
Javascriptfehler beim Window-Resize
#27484
Fehlendes Theme-Reset bei "Theme neuladen"
#27492
Unnötige Prüfung auf ungespeicherte Änderungen beim Umsortieren der Spalten in der Grid
#27499
Falsche Position wenn fix. Spalte in flex-Bereich gedraggt wird
#27500
Toolbar-Buttons nicht mehrzeilig im Tabellentitel darstellen
#27501
Tooltip der Spalte bleibt nach Umordnung weiter bestehen
#27502
Placeholder Animation statt Tabellenzeile in jeder Tabellenzelle
#27504
Teilweise CSS-Klassenduplikate in Tabellenzellen
#27506
Fehlende Default-Icons nach Theme-Reload
#27508
Galerie Attribut sieht kaputt aus
#27510
Inkrementelle TreeTable Updates können Sortierung zerstören
#27511
Konfigurierte Zeilenhöhe des Tabellenheaders wird nicht benutzt
#27515
Kommandos zum Starten von Services sind für alle Nutzer mit Lese-Berechtignung auf den Service-Editor ausführbar
#27516
Beacon Felder zeigen im Status "immutable" im Dezent Theme riesiges Icon an
#27520
Doppelte PropertyDescriptor beim collect mit "unordered properties"
#27522
Fehlendes Key-Property bei Überschreibung von ConfigurationItem
#27526
Fehlende Berücksichtigung der Annotation ReferenceDisplay in Kompositionen
#27529
RowClassProvider werden ignoriert
#27533
Unnötige Ausführung des Control-Kommandos "visibleButtonCount"
#27544
NPE beim Verlinken von Hilfeseiten in anderen Hilfeseiten
Verbesserung (Nutzer-sichtbar)

Wichtig

#27330

DropDown mit Tooltip

DropDownSelectField

Die Konfigurationsdialoge (Select Felder) haben teilweise komplexe Konfigurationsoptionen, bei denen vom Namen alleine nicht ersichtlich ist, was die Option bedeutet. Hier soll, ähnlich der Kontext-Vervollständigung im TL-Script-Editor neben der Optionsliste ein Kontext-Hilfe-Fenster (Tooltip) erscheinen, wenn für eine Option eine Kontext-Hilfe verfügbar ist.

Des weiteren wurde im Laufe der Entwicklung entschieden, dass das hier neu entstandene DropDown, das alte Select ersetzen soll.
Daher sollte auch eine Mehrfachauswahl (Multiselection) unterstützt werden, für die Teile der Features aus Ticket #27331 hier implementiert werden.
Ermöglicht das DropDown also eine Mehrfachauswahl, soll eine Option beim Wählen als sogenanntes Tag erscheinen, das entfernt werden kann.

Anfängliches Konzept:

Verbesserung

An den meisten Stellen, an denen vorher SelectControl's verwendet wurden, sollte jetzt das neue DropDownControl auftauchen.

Je nach Platz sollte die DropDown-Liste nach oben oder unten geöffnet werden, vorrangig aber nach unten. Bei nicht ausreichendem Platz sollte die Liste scrollbar sein.
Beim Öffnen ändert sich der Chevron in die öffnende Richtung.
Wählt man ein Item mittels Tastatur oder bewegt die Maus darüber, wird -sofern existent- ein Tooltip mit näheren Informationen angezeigt. Der Tooltip wird je nach Platz rechts oder links der Liste angezeigt, bevorzugt aber rechts. Ein kleiner Pfeil am Tooltip zeigt auf das zugehörige Item in der Liste.
Würde der Inhalt des Tooltips diesen vertikal soweit vergrößern, dass der Platz überschritten wird, wird stattdessen der Tooltip scrollbar.
Im Tooltip kann außerdem Text markiert und kopiert werden.

Bei Aktionen außerhalb der Liste (klicken, scrollen), sowie auswählen eines Items der Liste, wird die Liste geschlossen.
Wird ein Item ausgewählt, ändert sich der Text des DropDowns zum ausgewählten Item.
'''Ausnahme: '''Multi-Selection. D.h. erlaubt das DropDown die Auswahl mehrerer Items, bleibt der Text bestehen. Dafür wird ein sogenannter Tag erzeugt, der das Item darstellt und über einen X-Button wieder entfernt werden kann.
Items, die ausgewählt wurden und als Tags zu sehen sind, tauchen nicht mehr in der DropDown-Liste auf.




Die Liste des DropDowns ist mit der Tastatur navigierbar. Hierfür können die Pfeiltasten nach oben und unten, Bild auf und Bild ab, Pos1 und Ende sowie Enter und Escape verwendet werden. Die Navigation funktioniert auch, wenn die Liste noch geschlossen ist und der Fokus auf dem DropDown liegt.

Weiterhin gibt es ein Suchfeld, das bei nach unten öffnender Liste oben und bei nach oben öffnender Liste unten erscheint, sobald ein Zeichen eingegeben wird. Die Liste wird dann gefiltert, wobei an jeder Stelle eines Items nach der eingegebenen Zeichenkombination gesucht wird. Groß- und Kleinschreibung sind hierbei irrelevant.
Die Liste bleibt bei der Suche weiterhin per Tastatur und Maus navigierbar.

Test

Eine Demonstration der Features des neuen DropDowns ist in der technischen Demo zu finden. Hierfür wählt man in der technischen Demo den Tab Layout-Framework!#1, wählt in der zweiten Zeile dann den Tab Formulare und befindet sich in der dritten Zeile im richtigen Tab, wenn Form Controls (inline) ausgewählt ist. Nun scrollt man in Alle einfachen form controls herunter, bis man den Abschnitt Checkboxes erreicht. In diesem befindet sich das DropDown direkt vor dem ersten Unterabschnitt selectionControlGroup.

Außerdem sollte an jeder Stelle, an der vorher ein normales Select verwendet wurde, das neue DropDown zu finden sein. Beispielsweise in der modellbasierten Suche.
Tests müssen durch Ausprobieren durchgeführt werden.

  • 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