Programmier Funktionen
REST und Qodly Unterstützung von Singletons
4D 20 R6 erweitert die in der vorherigen Version eingeführten Singletons. Jetzt können Sie Funktionen, die von gemeinsam genutzten Singletons bereitgestellt werden, direkt über REST APIs und Qodly Pages Events aufrufen.
Verwalten Sie Ihre HTTP-Anfragen mit HTTP-Agenten
4D 20 R6 führt HTTP-Agenten ein, um Verbindungen zu HTTP-Servern anpassen zu können, da diese HTTP-Agenten die Aufrechterhaltung und Wiederverwendung von Verbindungen für HTTP-Anfragen verwalten.
Durch diese Optimierung wird der Overhead vermieden, der durch die Neuverhandlung von Verbindungen, insbesondere von gesicherten Verbindungen, bei jeder Anfrage entsteht. Standardmäßig verwenden alle HTTPRequest Befehle einen einfachen Agenten, der die Verbindungen aufrecht erhält. Dennoch können User benutzerdefinierte Agenten erstellen, um Verbindungen fein abzustimmen, den Keep-Alive-Mechanismus zu steuern, die maximale Anzahl gleichzeitiger Verbindungen festzulegen, Timeouts hinzuzufügen und TLS/SSL-Einstellungen auf Agentenebene zu konfigurieren.
Force Login wird Standard für alle REST Auth
4D 20 R6 führt den Force Login-Modus als Standardverhalten für die Steuerung des REST-API-Zugriffs ein. Diese Funktion, die über die Funktion ds.authentify implementiert wird, erhöht die Sicherheit, da für den API-Zugriff Anmeldedaten erforderlich sind. Neue Projekte enthalten automatisch eine Datei roles.json, in der das Attribut forceLogin auf True gesetzt ist, wodurch der Zugriff standardmäßig verweigert wird. Bestehende Projekte können über eine neue Schaltfläche im Dialogfeld Struktureinstellungen auf diesen Modus umgestellt werden. Dieses Update vereinfacht den Übergang von den alten Methoden der Zugriffskontrolle und ermöglicht eine feinkörnige Zugriffsverwaltung mit dem Qodly Studio Rollen- und Berechtigungseditor.
Zusammenspiel von Komponenten über deklarierte NAMESPACES
4D 20 R6 führt einen neuen Ansatz ein: Komponenten mit deklarierten Namespaces teilen ihre Klassen automatisch mit allen anderen Komponenten innerhalb desselben Projekts. Dadurch sind keine komplizierten Konfigurationen mehr nötig und Sie können Klassen anderer Komponenten direkt in Ihrem Code verwenden.
Einfacher Referenzvergleich von Objekten & Collections
4D 20 R6 macht die Arbeit mit Objekten in Ihrem Code viel einfacher! Es werden neue Vergleichsoperatoren (= und #) eingeführt, mit denen Sie schnell feststellen können, ob zwei Objekte im Speicher gleich sind. Dies ist besonders hilfreich, wenn Sie mit Objektreferenzen arbeiten.
Erweiterter Zugriff auf den Session-Speicher
Früher war es schwierig, sicherzustellen, dass User in verschiedenen Teilen Ihrer Applikation, z.B. einer Web-Applikation und einer Client/Server-Applikation, das gleiche Erlebnis hatten. Das lag daran, dass die in einer Session gespeicherten Informationen nicht ohne weiteres für andere Sessions zugänglich waren.
4D 20 R6 behebt dieses Problem mit einem neuen Befehl, Session storage by id. Mit diesem Befehl können Sie auf die Speicherung jeder Session in Ihrer Applikation zugreifen, unabhängig davon, ob es sich um eine Web-Sitzung, eine Client/Server-Sitzung oder eine mobile Sitzung handelt.
Das bedeutet, dass Sie jetzt problemlos Informationen speichern können, die in verschiedenen Teilen Ihrer Applikation gemeinsam genutzt werden müssen. Sie können zum Beispiel einen Kundendatensatz in der Session speichern, wenn sich ein User anmeldet, und dann auf denselben Datensatz sowohl von der Web-App als auch von der Client/Server-App aus zugreifen.
Berechtigungen: Session-Privilegien für einfaches Debugging prüfen
4D 20 R6 stärkt die Sicherheit Ihrer Applikationen, indem es Ihnen mehr Kontrolle über den Zugriff der User auf Daten gibt!
Eine wichtige Methode zum Schutz Ihrer Applikationen ist die Kontrolle darüber, auf welche Daten User zugreifen können. 4D 20 R6 erleichtert dies mit einer verbesserten Rechteverwaltung.
ORDA
Keine leeren Stellen mehr in Ihrer Entity-Selection
4D 20 R6 führt eine neue clean() Funktion für die Entity-Selection ein, die das Durcheinander von Leerräumen nach dem Löschen von Entities beseitigt. Dadurch wird die Benutzerfreundlichkeit verbessert, da die Oberfläche sauber und übersichtlich bleibt.
Code Editor
Anpassen der Anzeige globaler Warnungen
Mit den neuen Steuerelementen für globale Warnungen macht es 4D 20 R6 einfacher, sich auf die wichtigsten Probleme in Ihrem Code zu konzentrieren. Warnungen in Ihrem 4D Code können helfen, potenzielle Fehler zu erkennen. Sie wirken wie ein Sicherheitsnetz, das Sie auf Dinge aufmerksam macht, die später Probleme verursachen könnten. Bei großen oder komplexen Projekten können Sie jedoch eine Menge Warnungen erhalten.
Das kann überwältigend sein und es schwierig machen, sich auf die wichtigsten Punkte zu konzentrieren.
4D 20 R6 gibt Ihnen mehr Kontrolle darüber, welche Warnungen Sie sehen:
- Globale Warnungsdefinitionen: Sie können jetzt festlegen, welche Warnungen global im Code-Editor und im Compiler-Dialog angezeigt werden. So können Sie Warnungen ausblenden, von denen Sie wissen, dass sie für Ihr Projekt oder Ihren Codierungsstil irrelevant sind.
- Mehr Flexibilität: Auch wenn ein Warnungstyp gemäß den eingestellten Parametern angezeigt oder ausgeblendet wird, ist es immer noch möglich, die Überprüfung eines Warnungstyps lokal im Code mit den alten //%W+ und //%W- Schaltern zu aktivieren und zu deaktivieren.
4D Write Pro
Verwaltung leerer Datenquellen
4D 20 R6 ermöglicht eine bessere Kontrolle über das Aussehen von Tabellen in Ihren Dokumenten, insbesondere wenn die Daten, mit denen sie verknüpft sind, leer sind. Dies wird durch das neue Attribut wk empty datasource erreicht. Dieses Attribut definiert, wie sich eine Tabelle verhält, wenn die mit ihr verknüpfte Datenquelle leer ist und bietet Optionen für:
- Datenzeile anzeigen (Standard)
- Die Datenzeile ausblenden
- Die gesamte Tabelle ausblenden
- Eine Platzhalterzeile anzeigen
Web Area
Benutzerdefinierte Parameter für die Initialisierung des eingebetteten Web-Bereichs
4D 20 R6 macht es einfacher, die Web Area in Ihren Applikationen anzupassen! Dieser Bereich verwendet Chromium zum Browsen, und Entwickler müssen manchmal anpassen, wie Chromium funktioniert.
Früher waren dafür komplexe Codeänderungen erforderlich. Jetzt, mit 4D 20 R6, können Sie einfach eine Datei mit dem Namen “4DCEFParameters.json” erstellen und die gewünschten Anpassungen in dieser Datei angeben. Das macht die Verwaltung viel einfacher und stellt sicher, dass Ihre Anpassungen korrekt angewendet werden.
Mit dieser Funktion können Sie zum Beispiel Videos automatisch in Ihrer Web Area abspielen lassen, was vorher nicht möglich war.
4D Komponenten
Integrieren Sie 4D Komponenten direkt von GitHub
4D 20 R6 macht die Verwendung von Komponenten in Ihren 4D Projekten noch einfacher, insbesondere wenn diese Komponenten auf GitHub gespeichert sind. Bisher konnten Sie den Komponentenmanager nur mit Komponenten verwenden, die auf einem lokalen Laufwerk gespeichert waren. Mit 4D 20 R6 können Sie jetzt Komponenten aus GitHub Repositories direkt einbinden.
4D Netkit
Anpassen der OAuth 2.0 Verbindungsschnittstelle
4D 20 R6 gibt Ihnen mehr Kontrolle darüber, wie sich User mit OAuth 2.0 in Ihrer Applikation anmelden.
Standardmäßig wird bei OAuth 2.0-Anmeldungen ein Webbrowser-Fenster geöffnet, um die Anmeldeoberfläche anzuzeigen. Aber was, wenn Sie dieses Erlebnis anpassen möchten?
Mit 4D 20 R6 können Sie das Attribut browserAutoOpen verwenden, um zu verhindern, dass sich ein Webbrowser-Fenster automatisch öffnet. So können Sie die Anmeldeschnittstelle überall in Ihrer Applikation anzeigen lassen.
Benutzererfahrung
Verbessertes Scrolling-Verhalten in Unterformularen
4D 20 R6 macht die Arbeit mit Unterformularen in Ihren Applikationen für die User viel flüssiger und intuitiver!
Haben Sie sich schon einmal geärgert, wenn Sie in einem Unterformular durch eine Liste blättern wollten und sich stattdessen das gesamte Unterformular bewegt hat? Oder haben Sie versucht, im Unterformular zu blättern, aber die Listbox hat sich nicht bewegt?
4D 20 R6 behebt dieses Problem mit einem neuen, verbesserten Verhalten beim Scrollen von Unterformularen.
Wollen Sie mehr wissen? Lesen Sie alle Blogbeiträge über 4D 20 R6