Was ist neu in 4D v19 R3

ORDA

Vollständige Unterstützung von BLOB

Ab 4D v19 R3 werden Blobs in ORDA vollständig unterstützt, wie jeder andere Typ, so dass ORDA-Entwickler BLOB-Attribute in Entity-Operationen verwenden können.

Berechnete Attribute

Eine neue Möglichkeit, noch mehr Ihrer Geschäftslogik in Klassen und ORDA-Klassen zu sammeln! Die Zeiten, in denen Sie geschäftsbezogene Formeln in Ihrer 4D Benutzeroberfläche definieren mussten (z. B. String-Verkettungen oder Mehrwertsteuerberechnungen), sind vorbei. Sie können jetzt komplexe Berechnungen direkt in Ihren Klassen definieren und das Ergebnis wie für jedes andere Strukturfeld in der Rest-API, in Ihrer mobilen Anwendung oder in Ihrer ORDA-basierten Benutzeroberfläche verwenden, zum Beispiel. Ihre Geschäftsregeln verdienen Classes!

Zwei Entitätsselektionen vergleichen

Um effizient mit objektorientierter Programmierung zu arbeiten und möglichst wenige Zeilen Code zu schreiben, benötigen Sie robuste und optimierte Funktionen. Aus diesem Grund stellen wir mit 4D v19 R3 eine neue Funktion für das entitySelection Objekt zur Verfügung: die selected() Funktion. Dank dieser Funktion können Sie zwei Entity-Auswahlen überprüfen und vergleichen.

4D für iOS

Action Input Steuerelemente

Bisher konnten Sie mit benutzerdefinierten Formatierern Text oder Bilder an den Inhalt eines Feldes anpassen, z. B. männlich/weiblich durch ein Bild oder 1, 2, 3 durch Textbeschriftungen ersetzen. Mit 4D v19 R3 können Sie Steuerelemente für Aktionen erstellen, die in Aktionsformularen verfügbar sind, z. B. eine Auswahlliste mit einem vordefinierten Text. Und was noch besser ist, diese Liste kann dynamisch mit einer Datenquelle gefüllt werden, wie z.B. einer Liste von Arbeitgebern.

Action Input Controls sind spezielle Action Formatter, mit denen Sie eine statische Liste mit JSON oder eine dynamische Liste mit Datenquellen erstellen können. So stellen Sie sicher, dass Sie immer aktuelle Listen haben, auf die Sie direkt von Ihrer mobilen Anwendung aus zugreifen können.

Interaktion mit nativen Apple-Anwendungen

Es sind weitere Action-Input-Controls verfügbar; sie fügen Ihren Action-Formularen Module hinzu, um mit nativen Apple-Apps zu interagieren. Einige davon sind bereits in der Galerie verfügbar, wie zum Beispiel:

  • phoneContact: für die Suche nach der Telefonnummer eines Kontakts direkt in der App Apple Contacts
  • emailContact: für die Suche nach der E-Mail-Adresse eines Kontakts direkt in der App Apple Contacts
  • currentLocation und currentLocationAddress: um den aktuellen Standort des App-Benutzers automatisch mit Koordinaten (Breitengrad und Längengrad) und Adressen zu füllen

Um sie in Ihren mobilen Projekten zu verwenden, müssen Sie sie für Formatierer oder benutzerdefinierte Listen- und Detailformulare in Ihre Datenbank aufnehmen. Um dies zu tun, erstellen Sie einen speziellen Ordner „inputControls“, laden Sie das passende Steuerelement aus der Galerie herunter, entpacken Sie es und ziehen Sie es in den inputControls-Ordner.

Verbesserungen bei den Sortierkriterien und Aktionsparametern

Die Definition von Sortierkriterien und Aktionsparametern wurde beschleunigt und effizienter gestaltet.

Bei der Aktion “ Sortieren“ können Sie die Sortierkriterien der Aktion jetzt ganz einfach über eine Dropbox ändern, indem Sie ein anderes Feld aus den verfügbaren Feldern auswählen. Eine Meldung zeigt das mit dem ausgewählten Parameter verknüpfte Feld am unteren Rand des Aktionsparameter-Panels für die Aktionen Hinzufügen und Bearbeiten von Voreinstellungen an.

4D für Android

Debuggen Sie Ihre mobilen Anwendungen auf Android Geräten

4D v19 R3 bietet die Möglichkeit, eine mobile Anwendung direkt auf einem Android Gerät zu debuggen. Das Verfahren erfordert nur zwei Schritte, um Ihre Anwendung auf dem Gerät Ihrer Wahl zum Laufen zu bringen:

  1. Aktivieren Sie das USB-Debugging in den Einstellungen der Entwickleroptionen.
  2. Sobald Ihr Smartphone angeschlossen ist, wählen Sie Ihr physisches Gerät aus der Liste aus und klicken Sie auf „Erstellen und Ausführen“.

E-Mail

4D und Microsoft 365 Zugang

Nach der Einführung von OAuth 2.0 Authentifizierung für den Zugriff auf E-Mails über IMAP, SMTP oder POP3 Transporter. 4D implementiert das OAuth 2.0 Protokoll mit 4D v19 R3 und bietet eine einfache Möglichkeit, Authentifizierungs-Tokens von der Microsoft Identitätsplattform anzufordern, um sich mit der API für Microsoft 365 zu verbinden.

Sicherheit

bcrypt-Unterstützung für Kennwörter

Ab 4D v19 R3 werden alle Passwörter mit dem bcrypt-Algorithmus gehasht. Ein Algorithmus braucht viel länger zum Berechnen, genug, um zu verhindern, dass Brute-Force-Algorithmen das ursprüngliche Passwort wiederherstellen können.
Bei der Einrichtung läuft alles automatisch ab. Sie müssen keine einzige Einstellung oder Codezeile ändern. Wenn das Passwort in der Toolbox oder mit den Befehlen CHANGE PASSWORD oder Set user properties geändert wird, wird der bcrypt-Hash gespeichert. Und bei der Authentifizierung erkennt 4D automatisch, ob das Passwort mit dem Legacy- oder dem bcrypt-Hash gespeichert ist, so dass sich die Benutzer weiterhin verbinden können, ohne ihr Passwort zu ändern.

Dateien und Verzeichnisse

Unterstützung von LZMA, dem neuen Kompressionsalgorithmus

Mit 4D V19 R3 unterstützt der Befehl Zip Create Archive einen neuen Kompressionsalgorithmus: LZMA. Dieser Algorithmus hat den Vorteil, dass er kleinere Archive erzeugt als der Standard-Zip-Kompressionsalgorithmus. Sie können ein„zipArchive„-Objekt an den Befehl übergeben, um Ihr Zip-Archiv anzupassen. Damit können Sie den Kompressionsalgorithmus, den Verschlüsselungsalgorithmus und einige andere Optionen auswählen.

4D Write Pro

Dialog zur Bildeinstellung

Die 4D Write Pro Schnittstellenkomponente enthält jetzt einen neuen Dialog für Bildeinstellungen. Damit können Sie auf einfache Weise Folgendes festlegen

  • die Größe des Bildes
  • das Anzeigeformat
  • Ränder und Abstände
  • die Position auf der Seite für verankerte Bilder

Der Dialog kann entweder über das Kontextmenü oder über ein Ereignis wie z. B. „bei Doppelklick“ auf das Formular mit der Komponentenmethode „WP PictureSettings“ angezeigt werden.

Mit dieser Version wird auch die Möglichkeit hinzugefügt, ein Bild von einer URL mit dem Toolbar-Widget hinzuzufügen.

Kontinuierliche Abschnittswechsel

Ab 4D v19 R3 unterstützt 4D Write Pro kontinuierliche Abschnittswechsel. Ein kontinuierlicher Abschnittswechsel erzeugt einen eigenständigen Abschnitt, ohne einen Seitenumbruch zu verursachen. Dies ermöglicht u. a. eine unterschiedliche Anzahl von Spalten auf derselben Seite.

Das Einfügen eines kontinuierlichen Abschnittswechsels ist möglich:

  • Durch Programmierung über den Befehl WP Insert break, der jetzt einen neuen Wert unterstützt: wk continuous section break
  • durch Verwendung eines Menüs mit einer zugehörigen Standardaktion oder durch einfaches Hinzufügen einer Standardaktion zu einer Schaltfläche
  • über die Benutzeroberfläche

Verwaltung der Sichtbarkeit von Formeln

Für 4D Write Pro Dokumente sind bereits mehrere Anzeigeoptionen verfügbar. Wir haben die Option zur Hervorhebung von wk-Formeln zu dieser Liste hinzugefügt, mit 4 möglichen Werten:

  • 0: keine Hervorhebung von Formeln und Werten
  • 1: nur Formeln hervorheben (Standardwert)
  • 2: nur Werte hervorheben
  • 3: Formeln und Werte hervorheben

Es kann auch mit Standardaktionen gearbeitet werden. Sie können mit Kontrollkästchen, Standardschaltflächen und Dropdown-Listen verwendet werden.

Exportieren ins SVG-Format

4D Write Pro Dokumente können bereits in verschiedene Formate exportiert werden: pdf, normaler Text, Microsoft Word, HTML… Zu dieser Liste wird nun das SVG-Format hinzugefügt. Damit können Sie z. B. ein Bild der ersten Seite für eine schnelle Vorschau erstellen, die auf beiden Plattformen und in einem Browser oder einem mobilen Gerät verwendet werden kann, oder einen 4D Write Pro Block in ein anderes Dokument einfügen, z. B. in ein 4D View Pro Dokument.

Da SVG ein Bildformat ist, können Sie wählen, welche Seite Ihres Dokuments Sie exportieren möchten. Das endgültige Bild basiert auf dem Seiten-Rendering Ihres Dokuments. Dabei werden alle Layout-Optionen wie Ausrichtung, Ränder usw. berücksichtigt.

Programmierung

Debugging auf dem Server mit skalierbaren Websitzungen

Skalierbare Webs itzungen waren eine wesentliche Verbesserung von 4D v18 R6. Sie ermöglichen die Verwendung von 4D Tags, 4D Aktionen und der REST API in präemptiven Prozessen, sogar im interpretierten Modus, auf einem 4D Server. Für das Debugging mussten Sie jedoch Ihre Entwicklungsumgebung auf dem Server öffnen, um sie in den kooperativen Modus zu versetzen, da das Debugger-Fenster nicht mit präemptiven Prozessen geöffnet werden kann. Mit 4D v19 R3 haben wir das Debugging auf der Serverseite vereinfacht, indem wir den Debugger einfach an den Server angehängt haben.

Zugriff auf Methodenparameter, die nicht existieren

4D v19 R3 bietet die Möglichkeit, auf alle Methodenparameter ohne Fehler zuzugreifen, auch wenn einige von einem Aufrufer nicht übergeben wurden. Der Code ist ohne das wiederholte „if“-Schlüsselwort übersichtlicher und lesbarer.

Erstellung von Anwendungen

Vereinfachte Erstellung plattformübergreifender Client/Server-Anwendungen unter Windows

Mit der Einführung von Silicon hat sich die Erstellung plattformübergreifender Client-/Server-Anwendungen verändert. Solange Sie Ihren Server auf dem Mac erstellen, ist das kein großes Problem, da Sie sowohl für Intel- als auch für Silicon-Plattformen kompilieren können. Aber unter Windows ist es nicht möglich, für Silicon Macs zu kompilieren. 4D v19 R3 führt eine neue Funktion ein, die die Anzahl der zu übertragenden Dateien von Ihrem Mac zu Ihrem Windows Rechner reduziert. Wenn Sie den Client auf dem Mac erstellen, erzeugt 4D ein Verzeichnis für die kompilierte Datenbank. Dieser Ordner enthält nur den kompilierten Code für Ihre Anwendung und ist daher relativ klein.

Web-Bereich

Webcam-Unterstützung

Mit 4D v19 R3 können Sie Videokonferenzen aus verschiedenen Quellen wie Zoom, Microsoft Teams, Kopano und anderen anzeigen, indem Sie Audio- und Videostreams in Webbereiche einfügen. Um Ihre Webcam in einem Webbereich zu verwenden, erstellen Sie einfach einen Webbereich, in dem der Parameter Use embedded Web rendering engine aktiviert ist. Die Unterstützung von Videostreams im Webbereich erfolgt automatisch, da sie auf Ihren Systemparametern basiert.

Code-Editor

Vereinfachte Navigation zwischen Code, Dokumentation und Explorer

Wenn Sie ein Formular erstellen oder eine neue Funktion oder Methode schreiben, müssen Sie normalerweise:

  • auf den Explorer zugreifen, um das Formular in seinem Ordner auszufüllen
  • auf den Explorer zugreifen, um die Dokumentation für die Methode zu schreiben
  • um die Dokumentation eines Befehls auf der 4D Online Seite einzusehen
  • um die Dokumentation einer Methode einer Komponente einzusehen
  • auf den Code der Funktion zuzugreifen, die wir in unserer Methode verwenden wollen, um einige Änderungen vorzunehmen
  • einfaches Navigieren zwischen den verschiedenen Funktionen einer Klasse

In 4D v19 R3 haben wir Menüpunkte und eine neue Liste im Code-Editor hinzugefügt, mit denen Sie besser zwischen den verschiedenen Elementen eines Projekts navigieren können.

Protokolle

Konfigurationsdatei für die Protokollierung

Als Teil unseres Projekts zur Verbesserung der Logs fügt 4D v19 R3 zwei neue Funktionalitäten hinzu:

  • die Möglichkeit, die Protokollierung sofort zu unterbrechen
  • und eine Möglichkeit für Support-Teams, ihren Kunden bei der Konfiguration ihrer Protokolle durch eine Konfigurationsdatei zu helfen

Benutzeroberfläche

Entwickeln mit 4D in einer dunklen Umgebung unter macOS

Seit 4D v19 können Sie unter macOS Anwendungen erstellen, die den dunklen Modus unterstützen. So können Sie Ihren Nutzern die Möglichkeit geben, zwischen Anwendungen im hellen oder dunklen Stil zu wählen. Mit 4D v19 R3 lassen wir Ihnen als Entwickler die Wahl bei der Entwicklung Ihrer Anwendung. Die 4D Developer Edition fügt sich nahtlos in den hellen oder dunklen Look von macOS ein.

Wollen Sie mehr wissen? Lesen Sie alle Blogposts über 4D v19 R3