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

7.8.1
TopLogic Release

2024-06-24

Verbesserung

Wichtig
#27963
TL-Script: Zugriff auf das Label eines Fachobjektes in einer gegebenen Sprache
#27998
TL-Script-Funktion zur Filterung nach Berechtigungen
#27999
Kompositionsreferenzen in verschiedenen Tabellen speichern
#28049
OpenAPI Schnittstelle im Nutzer-Kontext
#28079
Preload für ForeignKeyStorage
Detail
#28005
Modell-Meta-Properties ergänzen
#28012
TL-Skript: Abfrage ob Objekt transient ist
#28014
Verbesserung der Zahlen- und Bilddarstellung auf Kacheln sowie Textausrichtung
#28017
Core Theme: Reduzierung des Abstands und Anpassung der Breite bei Subtitles in Formularen
#28018
Verbesserte Darstellung von Dropdown-Buttons
#28036
Migrationsprozessoren für Modell-Mapping
#28041
Erweiterung des TL Icon Fonts
#28051
Schnelle Identifier-Allokation bei hohem Bedarf
#28057
KBCache für Zugänge und Rollen "by name"
#28058
Konfigurierbarer Copyright-Header in generierten Wrapperklassen
#28061
Wertkonvertierung beim Setzen von Werten in transiente Objekte
#28063
Datenbankspalte für HTML-Attribute definieren
#28074
Applikationswerte primitiver Typen in der Persistenzschicht cachen
#28080
TL-Script: Deep Copy in Batch-Mode mit Preload
Kleinigkeit
#27867
Core-Theme: Script-Recorder Icons
#28050
TL-Sync in eigenes Projekt extrahieren
#28089
Rendering safety: Fehler beim Rendern von Template-Variablen abfangen

Fehlerbehebung

Wichtig
#27750
Fehlende Speichern-Abfrage beim Dialog-Schließen
#28035
Core-Theme: Theme "comfort/compact" verkleinert alle Charts
Detail
#27839
Doppelte Tooltips auf Sidebar-Buttons
#27959
Updates der Icons in Form-Headern defekt
#27996
Löschen taucht nicht im Kontext-Menü von Multiselektionskomponenten auf
#28002
Nicht geänderter berechneter Standardwert wird beim Speichern überschrieben
#28003
Application crashes, if some themes or some layouts have errors
#28004
Fehler beim Speichern von neuen Classifiern in einer TLEnum
#28011
Falsche Klassifikation von Assoziations-Enden bei Kompositionen
#28013
Script Rekorder: Speichern von Scripten zeigt nicht das Dateinamensfeld
#28015
Core-Theme: Die Kompakt-Variante wird fäschlicherweise als Standard ausgewählt
#28021
Buttons im deklarativen Formular sind nicht auf gleicher Höhe
#28024
Session-IDs nur in gehashter Form im Log und Monitor
#28027
Berechnete Attribute werden in transienten Objekten nicht ausgewertet
#28028
Reihenfolge von berechneten Spalten wird in den Standardspalten nicht berücksichtigt
#28030
Kein Replay bei Versionsupgrade von TL-6 auf TL-7.8
#28048
Reihenfolge von Migrationsanweisungen ist fehlerhaft
#28062
Ein Modul lädt unnötigerweise immer alle seine Typen
#28075
Fehlende "abstract" Eigenschaft bei TLProperty's
Kleinigkeit
#28006
Ergänzung fehlender @TemplateType Annotationen für ThemeVar Variablen
#28043
Fehler in Utility zur SQL-Migration
#28072
Migration für #27517 (User Management) crasht bei Inkonsistenzen
#28090
IDEFileSystemCache loggt Fehler bei schneller Anlage und darauffolgender Löschung
Verbesserung

Wichtig

#27999

Kompositionsreferenzen in verschiedenen Tabellen speichern

CompositionDaten-Migration

Zur Zeit werden die Werte aller Kompositionsreferenzen in einer Tabelle gespeichert. Dies hat den Vorteil, dass auf Datenbankseite sichergestellt werden kann, dass ein Element nicht in 2 verschiedenen Referenzen zugeordnet sein kann.

Der Nachteil ist, dass eben alle Zuordnungen in dieser einen Tabelle gespeichert werden und diese sehr groß werden kann. Weiterhin kann die Assoziation nicht inline in dem "Teil" gespeichert werden.

Verbesserung

Das Paradigma, dass die Datenbank sicherstellt, dass ein Element nur in einer Kompositionsreferenz enthalten ist, wird aufgegeben. Es soll möglich sein, eine eigene Assoziationstabelle angeben zu können.

Daten-Migration

Die Attribute tl.element:StructuredElementContainer#children und tl.elementStructuredElement#parent sind abstrakt geworden und müssen überschrieben werden. Wenn die Anwendung eine Struktur mit Hilfe von StructuredElement definiert, so muss es eine gemeinsame Oberklasse von allen Objekten geben die als Kinder auftreten können und eine gemeinsame Oberklasse aller Klassen die Kinder haben können. Gibt es keine solche Klassen so können diese mit folgendem Pattern erstellt werden:

  • Anlage von einer Oberklasse aller Kinder und einer Oberklasse aller Parents. Die Namen StructuredElementExt und StructuredElementContainerExt sind nur beispielhaft zu verstehen und entsprechend anzupassen: {{{

<interface name="StructuredElementExt"> <generalizations>

<generalization type="tl.element:StructuredElement"/>

</generalizations> <attributes>

<reference name="parent"
kind="backwards"
override="true"
type="StructuredElementContainerExt"
/>

</attributes> </interface> <interface name="StructuredElementContainerExt"> <generalizations>

<generalization type="StructuredElementExt"/>
<generalization type="tl.element:StructuredElementContainer"/>

</generalizations> <attributes>

<reference name="children"
override="true"
type="StructuredElementExt"
/>

</attributes> </interface> }}}

  • Interfaces und Klassen in der Struktur die tl.element:StructuredElement erweitern müssen dann StructuredElementExt erweitern und Erweiterungen von tl.element:StructuredElementContainer müssen zu Erweiterungen von StructuredElementContainerExt werden.

Test

Wird im Module DemoTypes und tl.doc benutzt.

  • 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