Was ist neu in 4D 21 seit 4D 20 R10

Dieses Dokument hebt alle neuen Funktionen hervor, die in 4D 21 LTS im Vergleich zu 4D 20 R10 eingeführt wurden. Jede Funktion enthält direkte Links zu ihrem Blogbeitrag für praktische Beispiele und zur Dokumentation für vollständige technische Details.

👉 Wenn Sie die in 4D 20 R2 bis R9 eingeführten Funktionen verpasst haben, verpassen Sie nicht die vollständige Liste der in jeder Version hinzugefügten Schlüsselfunktionen – sie sind am Ende dieses Beitrags unter Feature Releases im Detail verlinkt.

Dieses Dokument ist in zehn Abschnitte unterteilt:

KI-Integration

Zusätzlich zu den KI-Funktionen, die in früheren 4D 20 Rx Versionen eingeführt wurden – wie 4D AIKit für die vereinfachte Kommunikation mit Cloud-basierten oder lokal gehosteten KI-Modellen und die Einführung nativer Vektorfelder – geht 4D 21 LTS einen Schritt weiter mit neuen Funktionen, die KI praktischer, integrierter und direkt in Geschäftsanwendungen nutzbar machen.

SEMANTISCHE ABFRAGEN

Sie können jetzt die semantische Suche direkt in Ihre ORDA-Abfragen integrieren. Anstatt sich auf separate Prozesse zu verlassen, können Sie das Vektorfeld eines Datensatzes mit einem Referenzvektor vergleichen und sofort die relevantesten Ergebnisse zurückgeben, und zwar innerhalb derselben ORDA-Grammatik, die Sie bereits verwenden.

Die Abfrage akzeptiert ein einfaches Parameterobjekt mit einem erforderlichen vector und optionalen Attributen wie der Ähnlichkeit metric (standardmäßig Cosinus) und einer Ähnlichkeit threshold.

// Step 1: Define the kind of profile you want to match semantically
$searchText:="senior project manager with strong HR background, based in France"

// Step 2: Create an AI client (local baseURL optional)
$client:=cs.AIKit.OpenAI.new()
$client.baseURL:="http://127.0.0.1:1234/v1"

// Step 3: Generate an embedding vector for the search text
$embedResult:=$client.embeddings.create($searchText; "text-embedding-mxbai-embed-large-v1")
$semanticVector:=$embedResult.vector

// Step 4: Build the semantic query object with similarity options
$semanticQuery:={vector: $semanticVector; metric: "cosine"; threshold: 0.4}

// Step 5: Run the query — combine semantic match with traditional filter
$results:=ds.Profiles.query("yearsOfExperience >= 5 & expertise >= :1"; $semanticQuery)

Vektorielle Bedingungen fügen sich nahtlos in die klassische ORDA-Logik ein, so dass Sie semantische Ähnlichkeit mit traditionellen Filtern in einer einzigen Abfrage kombinieren können. Durch die Anpassung des Schwellenwerts können die Ergebnisse von breit und verrauscht zu eng und präzise werden, so dass Sie aussagekräftige, kontextbezogene Ergebnisse erhalten, ohne die Komplexität zu erhöhen. Der gesamte Prozess bleibt innerhalb der ORDA-Grammatik, die Sie bereits kennen, so dass Ihre Abfragen sauber, aussagekräftig und einfach zu pflegen sind.

AI-Tool-Aufrufe und Antwortformate

AI Tool Calling und Response Formate erweitern 4D AIKit um die Möglichkeit, geschäftsspezifische Funktionen direkt in AI-gesteuerte Konversationen zu integrieren. Tool Calling ermöglicht es Ihnen, ausgewählte Funktionen aus Ihrer Anwendung – wie z.B. „verfügbare Produktkategorien auflisten“ oder „meistverkaufte Produkte abrufen“ – als aufrufbare Tools bereitzustellen. Wenn ein KI-Modell feststellt, dass ein Tool benötigt wird, leitet 4D AIKit den Aufruf automatisch an Ihre registrierten 4D Funktionen weiter und integriert das Ergebnis zurück in die Antwort. Auf diese Weise müssen keine großen Datensätze hochgeladen oder neu trainiert werden, während die KI gleichzeitig in der Lage ist, Benutzeranfragen mit aktuellen, anwendungsspezifischen Daten zu beantworten. In der Praxis bedeutet dies, dass Sie einen Chat-Assistenten in Ihre Anwendung einbetten können, und wenn ein Benutzer fragt : „Was sind die 10 meistverkauften Produkte nach Kategorie?“, kann das Modell Ihre Funktionen aufrufen, echte Geschäftsdaten abrufen und die Antwort in natürlicher Sprache zurückgeben.

Darüber hinaus unterstützt 4D AIKit jetzt strukturierte Antwortformate, was die Integration mit nachgelagerten Prozessen zuverlässiger macht. Neben reinem Text können Antworten als strikte JSON-Objekte angefordert oder gezwungen werden, einem von Ihnen definierten JSON-Schema zu entsprechen. Dies ist besonders nützlich, wenn unstrukturierte Eingaben von Benutzern in vorhersehbare Daten umgewandelt werden müssen oder wenn KI-generierteInhalte ohne manuelle Bereinigung in automatisierte Workflows einfließen sollen.

Semantische Abfragen, Tool-Aufrufe und strukturierte Antwortformate machen KI in 4D nicht nur zu einer Konversationsebene, sondern zu einer vollständig integrierten Systemkomponente, die in der Lage ist, relevante Geschäftsdaten abzurufen, Logik sicher innerhalb Ihrer Anwendung anzuwenden und strukturierte Ausgaben zu liefern, die sich nahtlos in Ihre Workflows einfügen. Und jetzt, da AIKit als Open Source zur Verfügung steht, haben Sie volle Transparenz und Kontrolle – Sie können es an Ihre eigenen Geschäftsanforderungen anpassen, erweitern und weiterentwickeln.

NETZWERK-Vermittlung

Das in 4D 20 R2 eingeführte QUIC Protokoll sorgt für eine schnellere und stabilere Kommunikation – insbesondere in Umgebungen mit hoher Latenz oder Verlusten. Mit 4D 21 LTS ist QUIC nun die empfohlene Netzwerkschicht, die ServerNet als Standard ablöst und einen großen Schritt nach vorne für zuverlässige, moderne Implementierungen darstellt.

Nahtloses Netzwerk-Switching

Mit 4D 21 unterbricht der Wechsel zwischen Netzwerkschnittstellen nicht mehr Ihre 4D Remote-Verbindung. Egal, ob Sie von Ethernet zu Wi-Fi wechseln, einen Adapter austauschen oder einen Laptop in einem anderen Netzwerk aufwecken, der Client baut jetzt automatisch seine Sitzung mit 4D Server wieder auf und setzt die Ausführung ohne Datenverlust fort. Ermöglicht wird dies durch das QUIC Protokoll, das eine schnelle und zuverlässige Wiederherstellung der Verbindung bei wechselnden Netzwerkbedingungen ermöglicht.

Ihr Arbeitsablauf bleibt nahtlos: Der Ausführungskontext bleibt erhalten, und die Prozesse werden genau dort fortgesetzt, wo sie unterbrochen wurden. Auf der Serverseite wird die IP-Adresse des Clients in Echtzeit im Administrationsdialog, in den Diagnoseprotokollen und in den Sitzungsattributen aktualisiert, so dass für Administratoren volle Transparenz gewährleistet ist. Dies macht 4D Remote in mobilen Umgebungen, in denen sich die Netzwerkbedingungen häufig ändern, wesentlich robuster.

ORDA

Mit 4D 20 R10 führte ORDA Constructor für die Initialisierung von Entitäten und onTouch für die Verfolgung von Änderungen ein, wodurch die Geschäftslogik näher an die Daten heranrückt. In 4D 21 LTS wird diese Entwicklung durch einen vollständigen Satz von Lebenszyklus-Ereignissen vervollständigt, die Entwicklern eine präzise Kontrolle über jede Phase im Leben einer Entität ermöglichen.

Neue Entity-Lebenszyklus-Ereignisse

Entity-Operationen bieten jetzt einen vollständigen Satz von Lebenszyklus-Ereignissen –validateSave, saving, afterSave, validateDrop, dropping und afterDrop-, die jede Phase des Speicherns und Verlassens einer Entity über drei verschiedene Phasen abdecken:

  • Before → Ungültige Operationen sofort validieren und blockieren.

  • Während → Geschäftsregeln, Synchronisierungslogik oder Protokollierung in Echtzeit anwenden.

  • Nachher → Ausführen von Folgeaufgaben, Integrationen oder Benachrichtigungen – unabhängig vom Ergebnis.

In der Praxis bedeutet dies, dass Eingaben vor der Persistenz validiert werden können, Logik während des Vorgangs ausgeführt werden kann und die Ergebnisse nach Abschluss des Prozesses verarbeitet werden können.

Ereignisse können sowohl auf der Attribut- als auch auf der Entitätsebene implementiert werden. Validierungsereignisse stoppen Operationen sofort im Fehlerfall, während Post-Events immer ausgeführt werden.

Durch die Konzentration der Logik in ORDA-Datenklassen wird das Verhalten der Entitäten in sich geschlossen und ist leichter zu pflegen. Geschäftsregeln werden nicht mehr in Triggern versteckt, Anwendungen bleiben vom Design her konsistent, und externe Integrationen können direkt über native Event-Hooks angebunden werden. In ORDA-Projekten werden Trigger nicht mehr benötigt – Lebenszyklus-Ereignissebieten Ihnen jetzt die volle Leistungsfähigkeit von ORDA auf eine saubere, besser wartbare Weise.

4D Qodly Pro

Mit4D Qodly Pro können Sie Ihre Geschäftsanwendungen um moderne browserbasierte Schnittstellen erweitern – ohne eine einzige Zeile HTML oder JavaScript zu schreiben. Erstellen Sie responsive Webformulare mit einem visuellen Drag-and-Drop-Editor und verbinden Sie diese direkt mit Ihrer bestehenden 4D Geschäftslogik.

Ab 4D 21 LTS können Sie sogar Qodly Pro Seiten direkt in Ihre klassischen 4D Formulare einbetten, indem Sie einen Webbereich verwenden. Aus der Sicht des Anwenders fühlt es sich wie eine nahtlose Schnittstelle an – keine separaten Fenster, keine zusätzlichen Lizenzen erforderlich. Die eingebettete Qodly Pro Seite nutzt dieselbe Sitzung und Lizenz wie der 4D Remote Client, so dass das Erlebnis transparent und ohne zusätzliche Kosten bleibt.

Gemeinsame Nutzung von Sitzungen UND INTERAKTIONEN zwischen Client/Server Anwendungen und 4D Qodly Pro

In 4D 21 kann eine 4D Remote Sitzung und die zugehörige Lizenz nun mit einer 4D Qodly Pro Anwendung geteilt werden, die in einem Webbereich einer Client/Server Anwendung angezeigt wird. Das bedeutet, dass keine zusätzliche Lizenz verbraucht wird und dass derselbe Sitzungskontext nahtlos zwischen dem Desktop Formular und der 4D Qodly Pro Seite übergeht.

Authentifizierung und Berechtigungen werden automatisch beibehalten und Sitzungsdaten können weitergegeben werden, um die Webseite mit dem Kontext des Desktops zu initialisieren, z.B. um Details der aktuell ausgewählten Entität anzuzeigen.

Neben der gemeinsamen Nutzung von Sitzungen ermöglichen die neuen 4D Qodly Pro Aktionen eine direkte Interaktion zwischen 4D Formularen und 4D Qodly Pro Seiten. Von einer 4D Qodly Pro Seite aus können Entwickler 4D Funktionen über das $4d Objekt aufrufen, das zuvor mit dem WA SET CONTEXT Befehl initialisiert wurde. Umgekehrt kann ein 4D Formular die Qodly Quellen direkt aktualisieren, so dass ein synchronisierter Zustand und Logik in beiden Umgebungen gewährleistet ist.

Zusammengenommen machen es diese Verbesserungen einfach, klassische 4D Formulare mit modernen 4D Qodly Pro Seiten in einer einzigen Anwendung zu kombinieren – und so Sitzungen, Interaktionen und Kontext zu vereinheitlichen, während redundante Logins, zusätzliche Lizenzen oder komplexe Integrationsarbeit vermieden werden.

Eingebaute Internationalisierung (i18n)

4D Qodly Pro bietet jetzt integrierte Internationalisierung (i18n), so dass sich Ihre Anwendungen nahtlos an mehrere Sprachen und regionale Einstellungen anpassen können.

Unterstützte Sprachen werden als Gebietsschemata im neuen Bereich Lokalisierung definiert, in dem Übersetzungsschlüssel und -werte verwaltet und an Komponenten gebunden werden können. Die Sprachauswahl wird von der integrierten UserLanguage QodlySource übernommen, die die Auswahl des Benutzers in Echtzeit umsetzt.

Automatische Fallbacks decken Sitzungsdaten, Browser-Standardeinstellungen oder ein primäres Gebietsschema ab, während die native Rechts-nach-Links-Unterstützung (RTL) Sprachen wie Arabisch ein natürliches Gefühl verleiht. Bei einem Sprachwechsel werden die Inhalte sofort aktualisiert, sodass ein reibungsloses, personalisiertes Erlebnis entsteht.

Auf diese Weise können Sie in neue Märkte expandieren, die Reibungsverluste bei der Einführung reduzieren und das Vertrauen der Benutzer stärken – ohne dass Sie Ihre Benutzeroberfläche neu gestalten oder die Komplexität erhöhen müssen. Ganz gleich, ob Sie Ihr Produkt lokal oder global einführen, Ihr Produkt ist bereit, die Sprache Ihrer Nutzer zu sprechen.

Qodly-Seiten-Ereignisbericht

Der neue Qodly Page Events Report in 4D Qodly Pro gibt Ihnen einen klaren, einheitlichen Überblick über alle Ereignisse auf Ihrer Seite – egal, ob sie von Standardaktionen, Navigationsaktionen, Klassenfunktionen oder Dialogaktionen stammen. Er zeigt, welche Ereignisse deklariert sind, wo sie implementiert sind und in welcher Reihenfolge sie ausgeführt werden.

Durch die Transparenz des Ereignisflusses wird die Fehlersuche beschleunigt, Überschneidungen oder fehlende Handler werden sofort aufgedeckt, und die Optimierung ist einfach. Teams können leichter zusammenarbeiten, und Sie gewinnen die Gewissheit, dass Sie genau wissen, wie sich Ihre Seite verhält.

Es ist ein einfacher Weg, um Klarheit, Genauigkeit und Effizienz in die Ereignisverwaltung zu bringen – ganz gleich, ob Sie eine kleine Anwendung oder eine umfangreiche Lösung entwickeln.

CANVAS-ZOOM-STEUERELEMENTE

Der 4D Qodly Pro Seiteneditor führt Canvas-Zoom-Steuerelemente ein, um die Arbeit mit komplexen Layouts zu erleichtern. Entwickler können nun direkt über die Symbolleiste die Ansicht vergrößern, verkleinern oder zurücksetzen, mit Unterstützung für Tastaturkürzel und Mausradnavigation.

Die aktuelle Zoomstufe wird in der Benutzeroberfläche angezeigt, so dass Entwickler genau steuern können, wie sie die Komponenten auf dem Canvas anzeigen und anordnen.

Diese Erweiterungen verbessern die Navigation, die Designgenauigkeit und die allgemeine Benutzerfreundlichkeit und passen den Seiteneditor an die Standards moderner visueller Designtools an.

Automatische Einrichtung von Qodly Studio

Wenn Sie Qodly Studio zum ersten Mal aus dem 4D Design Modus starten, wird jetzt ein automatischer Einrichtungsassistent gestartet. Alle erforderlichen Einstellungen – REST-Server-Aktivierung, skalierbare Sitzungen, Webserver-Ports – werden erkannt und mit einer Aufforderung zur Aktivierung angezeigt.

Wird dies akzeptiert, werden die Dienste wie erforderlich neu gestartet und Qodly Studio wird im Browser geöffnet. Wird die Aktivierung abgelehnt, erfolgen keine Änderungen. Der Arbeitsablauf ist reibungslos, schnell und für neue Benutzer völlig unkompliziert.

Der Start von Qodly Studio erfordert keine manuelle Vorkonfiguration mehr. Erstmalige Entwickler sind mit nur einem Klick produktiv.

4D-Komponente

Die Verwendung von Komponenten hat sich zwischen 4D 20 und 21 drastisch verbessert. Mit dem Dependency Manager können Sie jetzt einfach Komponenten hinzufügen und pflegen – egal ob öffentlich oder privat. Und mit 4D 20 R10 wurde ein neues Modell für die Komponentenbearbeitung eingeführt, mit dem Sie Komponentenmethoden direkt im Host-Projekt bearbeiten und debuggen können.

AUF DEM WEG ZUR NAHTLOSEN KOMPONENTENINTEGRATION

DieKomponentenentwicklung in 4D hat einen großen Schritt nach vorne gemacht. Methoden und Klassen einer Komponente – ob gemeinsam genutzt oder nicht – könnennun direkt im Host-Projekt angezeigt und bearbeitet werden, ohne dass die Komponente separat geöffnet oder der Fokus während der Entwicklung unterbrochen werden muss. Alle Methoden können jetzt an Ort und Stelle bearbeitet werden, und ganze Komponenten können von der Host-Oberfläche aus erstellt, mit Namespace, Dateien und Struktur initialisiert und dann sofort im interpretierten Modus bearbeitet werden.

Über den Code hinaus wurde die Sichtbarkeit auf schreibgeschützte Formulare, Ordner, Konstanten, Befehle, Plug-ins und sogar einen komponentenspezifischen Papierkorb erweitert. Konstanten behalten die Verknüpfung zu ihren Ausgangskomponenten bei und sorgen so für Konsistenz in der gesamten Anwendung, während neue Erstellungsabläufe automatisch Abhängigkeiten verdrahten und Strukturen sowohl für den verwalteten als auch den Legacy-Modus einrichten.

Insgesamt wird dadurch die Iteration von Komponenten schneller, die Modularisierung reibungsloser und die Projekte sauberer und transparenter. Dies ist ein wichtiger Meilenstein bei der Annäherung von Komponenten an den Arbeitsablauf des Host-Projekts – und weitere Verbesserungen stehen noch auf der Roadmap.

OPTIONALE KOMPONENTENVERWALTUNG

4D 21 enthält keine Standard 4D Komponenten mehr. Stattdessen melden Sie Ihren Bedarf über den Dialog Abhängigkeiten hinzufügen an, und 4D holt und installiert sie automatisch bei Bedarf. Von dort aus können Sie direkt auf den kompletten Katalog der 4D Komponenten zugreifen – einschließlich 4D AI Kit, 4D NetKit, 4D View Pro, SVG und mehr – die alle als Open Source auf GitHub veröffentlicht sind. Das gibt Ihnen die Flexibilität, nur das zu installieren, was Sie brauchen, und erleichtert es Ihnen gleichzeitig, das Innenleben der Komponenten zu erforschen, zu Verbesserungen beizutragen und Ihre Projekte an die sich entwickelnden Anforderungen anzupassen.

  • Fokussierte Abhängigkeiten: Es werden nur die benötigten Komponenten installiert.

  • Versionsanpassung: Die Abhängigkeiten folgen standardmäßig Ihrer aktuellen 4D Version, so dass die Kompatibilität ohne manuelle Prüfungen gewährleistet ist.

Beim Upgrade auf 4D 21 können bestehende Projekte die erforderlichen Komponenten automatisch herunterladen, während binäre Datenbanken weiterhin über den Installer oder das Download-Portal auf sie zugreifen.

4D Netkit

Während sich 4D NetKit anfangs auf das Hinzufügen nativer Microsoft 365- und Google-Integrationen konzentrierte undDienste wie E-Mail und Kalender abdeckte, hat es sich stetig zu einer umfassenden Toolbox für moderne Authentifizierung und Sicherheit entwickelt. Heute ermöglicht es nicht nur Single Sign-On über Microsoft 365, sondern bietet auch vollständige OpenID Connect-Unterstützung für die Integration mit einer Vielzahl von Identitätsanbietern.

Benutzerdefinierte URLs für Authentifizierungsergebnisse

Die Attribute authenticationPage und authenticationErrorPage im Befehlcs.NetKit.OAuth2Provider.new() unterstützen jetzt zusätzlich zu statischen Dateipfaden auch vollständige URLs. Authentifizierungsabläufe sind nicht mehr an lokale HTML-Dateien gebunden, sondern können auf dynamische Seiten umleiten, die in einer beliebigen Umgebung gehostet werden – in 4D Qodly Pro, auf Ihrem eigenen Server oder bei Drittanbietern.

Benutzerdefinierte Erfolgs- und Fehlerseiten erhöhen die Flexibilität, während Ihre bestehende Infrastruktur erhalten bleibt. URLs können unabhängig von der Anwendung aktualisiert werden, um eine neue UX oder ein neues Branding widerzuspiegeln, ohne dass ein Rebuild erforderlich ist. Die Unterstützung von URLs und Dateipfaden gewährleistet Abwärtskompatibilität und ermöglicht gleichzeitig dynamischere, integrierte Anmeldeabläufe.

OpenID mit Status- und Nonce-Verarbeitung

Authentifizierungsabläufe entsprechen jetzt vollständig den Anforderungen von OpenID Connect durch Unterstützung der Parameter state und nonce.

  • state ermöglicht es Ihrer Anwendung, den Kontext über Weiterleitungen hinweg zu verfolgen und ihn bei der Rückkehr zu validieren.

  • nonce schützt vor Replay-Angriffen, indem es die Einzigartigkeit des Tokens erzwingt.

Diese Parameter werden automatisch in NetKit verarbeitet und schützen vor Manipulationen und Injektionen ohne zusätzliche Implementierung.

Entwickler können jetzt mit modernen Identitätsanbietern wie Google, Microsoft und Okta zusammenarbeiten und sich darauf verlassen, dass das Sicherheitsmodell auch bei genauer Prüfung Bestand hat, ohne dass sie eigene Token-Validierungsschichten erstellen müssen.

HTTP-SERVER

Der HTTP-Server in 4D geht über die einfache Bearbeitung von Anfragen hinaus. Mit 4D 21 erhalten Sie eine zentrale Kontrolle über HTTP-Antwort-Header und -Regeln direkt auf Framework-Ebene, die Umleitungen, benutzerdefinierte Header, Caching-Richtlinien, CORS und vieles mehr abdeckt und den Einsatz von Reverse Proxies oder manuellem Header-Management überflüssig macht.

Benutzerdefinierte HTTP-Antwortregeln

HTTP-Antwort-Header in 4D sind jetzt auf Server-Ebene konfigurierbar. Mit einer neuen HTTPRules.json Datei oder dem settings.rules Parameter während des Starts können Entwickler Antwortregeln definieren, die auf URL-Muster abgestimmt sind. Zu den unterstützten Regeln gehören:

  • removedHeaders: Entfernen unerwünschter Header (z. B. Entfernen des Server-Headers für strengere Audits).

  • addedHeaders: Einfügen von Sicherheits-Headern wie Content-Security-Policy, X-Frame-Options oder Permissions-Policy.

  • denyAccess: Blockieren Sie den Zugriff auf sensible Pfade mit einem 403-Status.

  • redirection: Leiten Sie Anfragen für Bilder, CSS oder JavaScript an ein CDN weiter.

  • status: Definieren Sie explizit den Statuscode der Antwort.

Durch die direkte Bearbeitung von Headern in 4D wird die Infrastruktur schlanker und ist weniger abhängig von externen Reverse Proxies oder manueller Header-Injection. Die Konsistenz wird verbessert, und Richtlinien werden auf Framework-Ebene für alle Web-Antworten durchgesetzt – auch für REST.

Sicherheit

Mit den Feature Releases nach 4D 20 wurden neue TCP und UDP Klassen eingeführt, die die alten 4D Internet Commands ersetzten. Mit 4D 21 LTS wird dieser Übergang durch das Hinzufügen von nativer TLS/SSL-Verschlüsselung vervollständigt, wodurch sichere Low-Level-Kommunikation zu einem integrierten Standard wird.

Sichere TCP Kommunikation mit integrierter TLS/SSL Unterstützung

TCP-Verbindungen unterstützen jetzt nativ TLS/SSL-Verschlüsselung. Durch Setzen des Attributs TLS im neuen Parameter options von 4D.TCPConnection.new() können Sie verschlüsselte Sitzungen ohne zusätzliche Konfiguration oder Wrapper erstellen.

  • Standard- und sichere Ports können parallel betrieben werden.

  • Sobald der Handshake abgeschlossen ist, fließen verschlüsselte Nachrichten nahtlos über die Verbindung.

  • TLS 1.3 ist das Standardprotokoll, das hohe Sicherheit und Kompatibilität mit modernen Endgeräten gewährleistet.

Das bedeutet, dass vertrauliche Daten von vornherein geschützt sind, die Einhaltung von Vorschriften einfacher zu bewerkstelligen ist und sicheres Messaging nicht länger eine Notlösung ist, sondern zum Standard gehört.

Verwendung des Windows-Zertifikatspeichers anstelle von lokalen Dateien

HTTPS-Anfragen können jetzt Zertifikate direkt aus dem Windows-Schlüsselbund abrufen, indem der Parameter storeCertificateName in den Klassen HTTPRequest und HTTPAgent verwendet wird. Damit entfällt die Notwendigkeit, Zertifikatsdateien lokal zu speichern und zu verwalten.

Schutz auf Systemebene und zentralisierte Verwaltung ersetzen das manuelle Jonglieren mit Dateien. Die Handhabung von Zertifikaten wird sicherer, konsistenter und lässt sich einfacher über Teams und Rechner hinweg verwalten.

Einheitliches Session Management für REST und 4DACTION

Mit 4D 21 haben Sie jetzt eine umfassende Möglichkeit, alle offenen Websitzungen zu überprüfen, unabhängig davon, ob sie von REST-Verbindungen, SOAP-Aufrufen oder 4DACTION-Anfragen stammen.

  • Alle aktiven Sitzungen werden in Echtzeit aufgelistet, so dass Administratoren einen transparenten Überblick über die Aktivitäten und die Ressourcennutzung erhalten.

  • Sitzungen können über Session.setPrivilege() mit Benutzernamen versehen werden, was die Identifizierung verbundener Benutzer, die Verfolgung von Aktionen und die Verwaltung von Lizenzen erleichtert.

  • Die Sitzungen sind thread-sicher und werden automatisch optimiert, um eine effiziente Ressourcennutzung und eine zuverlässige Leistung auch bei hoher Belastung zu gewährleisten.

Dies sorgt für eine reibungslosere API-Ausführung im großen Maßstab und bietet Entwicklern und Administratoren eine klarere Überwachung, stärkere Prüfungen und verbesserte Stabilität.

Upgrades von Kernbibliotheken und Abhängigkeiten

Mit 4D 21 LTS haben wir Xerces, libldap, ICU, Chromium (CEF), OpenSSL, libZip, LZMA, ZLib, Libuv, BoringSSL und PDFWriter aktualisiert und damit den gesamten Stack modernisiert, um die Sicherheit zu erhöhen, die Stabilität zu verbessern und die Kompatibilität mit den heutigen Plattformen zu gewährleisten.

4D Sprache

Der Unterschied in der 4D Programmiersprache zwischen 4D 20 und 4D 21 ist so groß, dass er sich nicht in wenigen Zeilen zusammenfassen lässt. Im Laufe der Feature Releases hat die Sprache eine moderne Syntax, eine stärkere Typisierung, eine bessere Fehlerbehandlung und neue Befehle erhalten. Mit 4D 21 LTS werden weitere Verbesserungen vorgenommen, um die Programmierung einfacher und konsistenter zu machen.

Konvertierung von hexadezimalen Strings in Zahlen

Mit dem Befehl String können Sie jetzt hexadezimale Zeichenketten direkt in Zahlen umwandeln. Sie müssen keine Parsing-Utilities mehr schreiben oder sich mit binären String-Tricks herumschlagen. Übergeben Sie einfach die Zeichenkette, und Sie erhalten das numerische Ergebnis.

Dies ist eine subtile Ergänzung, die bei der Arbeit mit externen APIs, Low-Level-Formaten oder Integrationen, die Hexadezimalwerte zurückgeben, für weniger Reibungsverluste sorgt.

Neue String Trim-Funktionen

Neue Befehle –trim, trimStart, trimEnd– erleichtern das Entfernen von Leerzeichen oder bestimmten Zeichen aus Zeichenketten. Sie verhalten sich wie ihre JavaScript- oder Python-Entsprechungen und funktionieren mit jedem Zeichensatz.

Eine manuelle Trimmlogik ist nicht mehr erforderlich. Die Daten sind sauberer, Formulareingaben lassen sich leichter validieren, und der Code entspricht den Erwartungen moderner Sprachen.

Lizenzen

Die Lizenzierung in 4D ist jetzt intelligenter und automatisierter. Mit 4D 21 werden Entwicklerlizenzen automatisch abgerufen und aktiviert, wenn Sie sich anmelden. Damit entfallen die manuellen Schritte, die früher die Erneuerung oder Einrichtung verlangsamten.

AUTOMATISCHER ABRUF DER PARTNER-ENTWICKLERLIZENZ

4D ruft jetzt automatisch Ihre Partner-Entwicklerlizenz ab und aktiviert sie, sobald sie sich ändert. Damit entfällt die Notwendigkeit, die Lizenznummern auf jedem Rechner manuell neu einzugeben. Wenn Sie sich anmelden, prüft 4D Ihr Partnerprogramm-Konto über 4D Motor, erkennt jede verfügbare Entwickler- oder Entwickler-Pro-Lizenz für Ihre Plattform und registriert sie sofort. Wenn nur eine Lizenz verfügbar ist, erfolgt die Aktivierung automatisch. Werden mehrere Lizenzen gefunden, werden Sie aufgefordert, sich für eine zu entscheiden.