Was ist neu in 4D v20.

Automatisch übersetzt von Deepl

Dieses Dokument fasst alle neuen Funktionen von 4D v20 zusammen . Beachten Sie, dass zu jeder Funktion ein zugehöriger Blog-Beitrag existiert, der Sie durch konkrete Beispiele führt. Diese Blog-Beiträge können durch Klicken auf den Titel der Funktion aufgerufen werden.

Die Abschnitte mit dem Tag blank beziehen sich auf alle neuen Funktionen, die zwischen 4D v19 R8 und 4D v20 veröffentlicht wurden.

Dieses Dokument ist in sechs Abschnitte unterteilt:

Improved network communication

Treffen Sie QUIC blank

Da die Anzahl der gleichzeitigen Verbindungen zu den größten Produktionsservern, die auf 4D laufen, weiter zunimmt, hat die Sicherstellung einer optimalen Leistung für die Entwicklungsteams höchste Priorität. Das QUIC Protokoll hat sich als vielversprechende Lösung für diese Herausforderung herausgestellt.

QUIC ist ein Protokoll, das die Geschwindigkeit und Leistung in serverseitigen Netzwerken verbessern soll. QUIC wurde in den letzten zehn Jahren von Google entwickelt und nutzt die Vorteile von UDP anstelle von TCP, um eine schnellere Wiederherstellung im Falle von Paketverlusten, Staus und anderen Problemen zu ermöglichen. QUIC wird heute in großem Umfang verwendet, beispielsweise in HTTP/3 als „HTTP over QUIC“, und wird von allen großen Browsern unterstützt, die bereits bei mehr als der Hälfte aller Verbindungen zu den Google-Servern zum Einsatz kommen. Facebook wickelt mehr als 75 % seines Internetverkehrs über QUIC ab, und viele Anwendungen wie YouTube, Gmail oder Uber nutzen QUIC für die Kommunikation mit ihren Servern.

Wir möchten Sie ermutigen, QUIC auszuprobieren und uns Ihr Feedback mitzuteilen, damit wir diese aufregende neue Technologie verbessern und verfeinern können, um den Weg für ihre Aufnahme in zukünftige Versionen von 4Dv20 zu ebnen. Und denken Sie daran, dass QUIC die Widerstandsfähigkeit der 4D Infrastruktur verbessern kann, so dass sie besser gegen schlechte Verbindungen und andere Netzwerkprobleme gewappnet ist.

4D Sprache & andere Programmierfunktionen

Eingebauter Websocket-Server blank

Das WebSocket-Protokoll bietet einen dauerhaften Vollduplex-Kommunikationskanal zwischen einem Client und einem Server. Es ermöglicht den Datentransfer in Echtzeit zwischen den beiden Parteien und erlaubt eine schnellere und effizientere Kommunikation.

4D v20 enthält jetzt einen integrierten WebSocket Server, der es Entwicklern ermöglicht, Echtzeit-Webanwendungen zu erstellen, die große Datenmengen verarbeiten können und ein nahtloses Benutzererlebnis bieten.

Dies eröffnet eine Welt der Möglichkeiten für Echtzeit-Datenvisualisierung, kollaborative Anwendungen und IoT-Anwendungen, die sofortige Updates erfordern.

Literaler Initialisierer für Objekte und Sammlungen blank

Objekte und Sammlungen können mit den Befehlen New object und New collection in Ihrem Code initialisiert werden.

Mit 4D v20 wurde eine neue und besser lesbare Syntax zur Initialisierung großer oder komplexer Objekte und Sammlungen in Ihrem Code eingeführt – das Objektliteral und das Sammlungsliteral.

Mit Objektliteralen können Sie ein Objekt mit seinen Eigenschaften und Werten, eingeschlossen in geschweiften Klammern {}, initialisieren. Anstatt den Befehl New object zu verwenden, können Sie zum Beispiel ein neues Objekt erstellen und seine Eigenschaften in einer einzigen Codezeile wie dieser initialisieren: $object1 := {a : „foo“; b : 42+26; c : {}; d : [„coucou“; „rien“]}.

In ähnlicher Weise können Sie mit Sammlungsliteralen eine Sammlung initialisieren, deren Elemente in eckige Klammern [] eingeschlossen sind.

Neue Befehle zum Sperren des Datenspeichers blank

4D bietet Ihnen mehrere integrierte Möglichkeiten, Ihre Daten zu sichern: 4D Backup und die Verwendung eines Spiegelservers. Mit 4D v20 stellt 4D interne Befehle zum Sperren des Datenspeichers zur Verfügung, mit denen Sie Ihre Daten kopieren können, während 4D läuft. Begrüßen Sie ds.flushAndLock(), ds.locked(), und ds.unlock().

Automatische Integration von mehreren Journalen blank

4D v20 führt eine leistungsstarke neue Funktion ein, die Ihre Produktivität bei der Datenbankwartung erheblich steigern kann. Durch die automatische Integration mehrerer Journale beim Start der Datenbank können Sie sich auf die Entwicklung Ihrer Anwendung konzentrieren, anstatt Zeit mit manuellen Datenbankverwaltungsaufgaben zu verbringen.

Um diese Funktion zu nutzen, stellen Sie einfach sicher, dass die Einstellung„Letzte Protokolle integrieren, wenn die Datenbank unvollständig ist“ aktiviert ist, was die Standardeinstellung ist. Legen Sie dann die zu integrierenden Journaldateien neben die aktuelle. 4D erkennt automatisch alle fehlenden Vorgänge in der Startdatenbank und prüft alle Journaldateien, um festzustellen, ob eine Wiederherstellung möglich ist. Wenn es keine Probleme gibt, werden die Vorgänge aus allen Journalen integriert, ohne dass Sie eingreifen müssen.

Erstellen Sie eine Anwendung mit 4D Befehlen blank

4D hat laufend neue Funktionen hinzugefügt, die Entwicklern helfen, ihre eigene Build Chain zu erstellen und damit mehr Flexibilität und Anpassungsmöglichkeiten für ihre Anwendungen zu bieten. Zu diesen Funktionen gehört die Möglichkeit, einen „.zip“-Ordner zu erstellen, zusätzliche Informationen wie das Copyright einer ausführbaren Datei oder einer „dll“ hinzuzufügen und eine „info.plist“-Datei zu erstellen.

Mit der Veröffentlichung von 4D v20 wurden zwei neue Funktionen hinzugefügt, die das Erstellen von Standalone- oder Client/Server-Anwendungen noch einfacher machen:

  1. Hinzufügen eines Symbols zu einer ausführbaren Datei.
  2. Generierung einer Deployment-Lizenzdatei.

Ein Tool zur Ausführung von 4D Code in CLI blank

4D v20 bringt eine neue Anwendung namens tool4d. Diese Anwendung ist eine Teilmenge von 4D, die für Ihre Build-Kette entwickelt wurde, um den Build-Prozess zu automatisieren, und ist für die Headless-Script-Ausführung über die Befehlszeilenschnittstelle bestimmt. Sie stellt aber auch den LSP-Server zur Verfügung, der mit der VS Code-Erweiterung kommuniziert.

4D-Analyzer Erweiterung blank

Diese Erweiterung wurde von unseren 4D-Entwicklern sehr gelobt, und wir könnten nicht glücklicher sein!

4D bietet Unterstützung für den Code-Editor von Visual Studio Code, der 4D Code mit Standardfunktionen wie Syntax-Hervorhebung, Go To Definition, Signaturhilfe und Code-Vervollständigung verarbeiten kann.

4D v20 erweitert den Visual Studio Code Editor um neue Funktionen durch die 4D-Analyzer Erweiterung: Begrüßen Sie Code-Faltung und -Einrückung sowie die Syntaxprüfung.

Lernen Sie die verbesserte Distinct Funktion kennen blank

Die Distinct-Funktion der Auswahlklassen Collection und Entity ermöglicht das Abrufen einer Liste eindeutiger Werte.

Mit 4D v20 können Sie auch die Anzahl der Vorkommen eines jeden eindeutigen Wertes abrufen. Darüber hinaus können Sie alle Attributpfade abrufen, die in einem Objektfeld verwendet werden. Diese Funktionalität kann bei der Arbeit mit großen Datensätzen von Vorteil sein, wenn die Häufigkeit bestimmter Werte analysiert werden soll.

Vergleich mit einem undefinierten Wert blank

Mit der Einführung von ORDA und anderen Objekten in 4D arbeiten Entwickler oft mit undefinierten Werten, was manchmal zu Fehlern beim Vergleich mit anderen Werten führt.

Mit 4D v20 wurde eine neue Verbesserung eingeführt, die es Entwicklern ermöglicht, jede Art von Wert mit einem undefinierten Wert zu vergleichen, ohne einen Fehler auszulösen. Das bedeutet, dass Sie jetzt undefinierte Werte sicher mit anderen vergleichen können, ohne sich Sorgen machen zu müssen, dass ein Fehler in Ihrem Code entsteht.

Einführung in die neuesten Funktionen zum Suchen und Ersetzen blank

Die Funktion „Suchen und Ersetzen“ im Code-Editor gibt es schon seit vielen Jahren. Entwickler können damit schnell und effizient Code suchen und ersetzen, insbesondere bei großen Codebasen. 4D v20 bringt Verbesserungen, die von Entwicklern, die sich auf diese Funktion verlassen, um ihre Arbeitsabläufe zu optimieren, sehr geschätzt werden:

  • Kenntnis der Anzahl der zu ersetzenden Vorkommen,
  • die Position des aktuellen Vorkommens zu kennen,
  • ständiger Zugriff auf die Navigationsoptionen Next und Previous,
  • die Anzeige einer Palette anstelle eines modalen Fensters, um die Anzahl der Klicks zu begrenzen.

Übergabe eines Formularobjekts an die Befehle Print Form und FORM LOADblank

Mit 4D v20 wird der Befehl Form von Print form und FORM LOAD unterstützt. Form, dessen Vorgängerversionen für DIALOG oder Unterformulare verfügbar sind, ermöglicht eine drastische Reduzierung des Bedarfs an Prozessvariablen und das Schreiben von portablerem und isoliertem Code. Dies ist eine willkommene Verbesserung von 4D, die das Leben der Entwickler zweifellos einfacher und produktiver machen wird.

Erstellen Sie Ihr eigenes Hilfemenü blank

Mit 4D v20 können Sie ein eigenes „Hilfe“-Menü für Ihre Anwendung erstellen, indem Sie eine Sammlung übergeben, die die Menüpunkte beschreibt. Auf diese Weise können Sie Ihren Anwendern zum Beispiel einen einfachen Zugang zu Dokumentation, Support und anderen hilfreichen Ressourcen bieten.

Neue praktische Funktionen für Sammlungen blank

4Dv20 bietet eine Reihe von Funktionen zur Manipulation von Sammlungen. Neben den über 40 Methoden, die wir bereits in der Vorgängerversion zur Verfügung gestellt haben, bietet Ihnen diese Version:

  • first() und last()erlauben den Zugriff auf das erste und das letzte Element einer Sammlung, wie ihr Name schon sagt.
  • Die Funktion at() Funktion ist auch eine Alternative zu eckigen Klammern (col[x]) mit einem Vorteil: Der Wert kann negativ sein, um die Elemente vom Ende her zu erhalten.
  • Die Funktion flat() Funktion ist innovativer und wird in einigen Fällen sehr nützlich sein. Sie ermöglicht die Verflachung von Sammlungen, die Sammlungen enthalten können (die wiederum Sammlungen enthalten können, usw.).
  • Die Funktion includes() Funktion ist praktisch, weil sie es erlaubt zu wissen, ob eine Sammlung dieses oder jenes Element von fast jedem Typ enthält… Text, numerisch, Datum… und sogar Referenzen von Objekten oder Sammlungen.
  • Die neue reduceRight() ist das optimierte Äquivalent zu reverse().reduce()
  • Die Funktion flatMap() Funktion erlaubt es uns, in einer einzigen Operation eine map() gefolgt von einer flat() – eine Funktion, die wir bereits erwähnt haben.

PDF-Format für die Druckvorschau unter Windows blank

Das PDF-Format ist nun eine brauchbare Alternative zu XPS für die Druckvorschau unter Windows geworden und bietet den Benutzern eine neue und leichter zugängliche Option. Microsofts Entscheidung, den XPS-Viewer zu einer optionalen Windows-Funktion zu machen, hat bei vielen Anwendern zu Problemen bei der Bereitstellung von Anwendungen geführt, was dazu führte, dass die Endanwender keine Druckvorschau ihrer Dokumente anzeigen konnten. Obwohl die Installation des kostenlosen XPS Viewers ein einfacher Prozess ist, zögern einige Administratoren, zusätzliche Funktionen zu installieren, insbesondere in Remote Desktop Umgebungen.
Glücklicherweise bietet 4D v20 jetzt die Möglichkeit, das PDF Format für die Druckvorschau zu nutzen. Da fast alle aktuellen Windows Versionen entweder XPS oder PDF vorinstalliert haben, sollten Endanwender keine Probleme mehr mit der Druckvorschau haben. Diese neue Option bietet eine flexiblere und effizientere Lösung, die sowohl den Bedürfnissen der Endanwender als auch denen der Administratoren gerecht wird.

Zurück. Weiter. Unterbrechen. Und mehr

Wir haben auf Ihre Wünsche im 4D Forum gehört und einige Verbesserungen der 4D Sprache vorgenommen!

  • Angefangen mit Anweisungen, die es Ihnen ermöglichen, aus einem Codeblock herauszuspringen:
    • Das Schlüsselwort return beendet die Ausführung der Methode oder Funktion, in der es vorkommt, und gibt die Kontrolle an die aufrufende Methode zurück. Es kann auch einen optionalen Wert zurückgeben.
    • Das break-Schlüsselwort beendet die Schleife, die es enthält. Die folgende Anweisung wird unmittelbar nach dem Schleifenkörper ausgeführt.
    • Die continue-Anweisung beendet die Ausführung der Anweisungen in der aktuellen Iteration der Schleife und setzt die Ausführung der Schleife mit der nächsten Iteration fort.
  • Gefolgt von der Auswertung eines Kurzschlusses: In einem Ausdruck, der einen AND- oder OR-Operator verwendet, bedeutet eine Kurzschlussauswertung, dass das zweite Argument nur dann ausgeführt oder ausgewertet wird, wenn das erste Argument nicht ausreicht, um den Wert des Ausdrucks zu bestimmen. Wir fügen zwei neue Operatoren hinzu, um dies zu erreichen:
    • && für den AND-Operator
    • || für den OR-Operator
  • Und dann gibt es noch einen ternären Operator, der aus einer Bedingung, gefolgt von einem Fragezeichen ( ? ), einem Ausdruck, der ausgewertet werden soll, wenn die Bedingung wahr ist, gefolgt von einem Doppelpunkt (:), und schließlich dem Ausdruck, der ausgewertet werden soll, wenn die Bedingung falsch ist, besteht: condition? value If True: value If False.

Fehlerbehandlung

4D v20 bietet neue Möglichkeiten für die Fehlerbehandlung. Von nun an können Sie einen globalen Fehlerhandler definieren, der für alle Ausführungskontexte (Prozesse, Worker, ORDA-berechnete Attribute, ORDA-Funktionen usw.) effizient ist. Wenn Sie es versäumen, in einem neuen Prozess/Worker einen lokalen Fehlerhandler zu definieren, wird automatisch der globale Fehlerhandler aufgerufen. Dies bedeutet, dass keine Fehlerdialoge mehr auf dem Server angezeigt werden oder Fehler nicht abgefangen werden.

Visualisieren Sie die Komponenten Ihrer Klassen im Methoden-Explorer

4D ermöglicht es Anwendungen, die noch im Binärmodus laufen, die Vorteile der Klassenfunktionen zu nutzen, indem sie eine Komponente (im Projektmodus) verwenden, um eigene Klassen aus ihrer (im Binärmodus laufenden) Anwendung zu erstellen und zu verwenden. Diese Funktion enthält Tipps und Unterstützung für die Code-Vervollständigung, um das Schreiben von Code zu erleichtern.

4D v20 bietet eine neue Funktion, die das Programmieren noch einfacher macht. Von nun an können Sie eine Liste aller verfügbaren Komponentenklassen im Methodenexplorer anzeigen lassen , so dass Sie im Handumdrehen entscheiden können, welche Funktionen Sie in Ihrem Code verwenden müssen.

Unterstützung von größeren Ganzzahlen als integer32

Sie benötigen also größere Zahlen als 2 Milliarden (32 Bits) mit hoher Genauigkeit für Zähler oder ähnliches? Wir haben die Reals und die Art, wie sie gehandhabt werden, verbessert, um dies zu ermöglichen. Während Reals bekanntermaßen ungenau sind, sind sie selbst für sehr große Zahlen 100% genau, solange sie keinen Dezimalpunkt verwenden (=Ganzzahlen). So können Sie Zahlen bis zu 53 Bits verwenden, genauer gesagt [-(2^53)+1, (2^53)-1]. So wird ein Bereich von -9.007.199.254.740.992 bis 9.007.199.254.740.992 exakt dargestellt.

Die Konvertierung in oder aus dem Text war auf die Verwendung der 12-stelligen wissenschaftlichen Notation beschränkt, was zu einem Verlust an Präzision führte. Mit 4D v20 haben wir die Genauigkeit und die Konvertierung einer beliebigen Realzahl (die eine ganze Zahl darstellt) in einen Text verbessert. Die Verbesserung der Umwandlung in einen String betrifft den String()-Befehl und die JSON- und XML-Befehle, die Zahlen in String-Form zurückgeben.

Unterstützung von Formeln in Collections & Callback-Befehlen

Um die Verwendung von Collections mit einer Member-Methode, die eine Callback-Methode benötigt, zu vereinfachen, erlaubt 4D die Verwendung einer Formel, um einen Callback in zu definieren:

Erlauben Sie Komponenten, Klassen zu veröffentlichen

Angenommen, Ihre Anwendung läuft noch im Binärmodus. In diesem Fall können Sie mit dieser Funktion von Klassen und objektorientierter Entwicklung profitieren, indem Sie eine Komponente (im Projektmodus) verwenden, um Ihre eigenen Klassen aus Ihrer (im Binärmodus laufenden) Anwendung heraus zu erstellen und zu verwenden. Ab 4D v20 gibt es in den Struktureinstellungen -‚ Allgemein einen neuen Abschnitt Komponente, in dem Sie konfigurieren können, wie Ihre Komponentenklassen und -funktionen im 4D Methodeneditor angezeigt werden, sobald die Komponente installiert ist.

Weiterleitung von Parametern von einer Funktion oder Methode zu einer anderen

Mit 4D v20 müssen Entwickler beim Aufruf einer Funktion und der Übergabe von Parametern keine komplexen Parameterprüfungen (Anzahl der Parameter, Werttypen) mehr durchführen.

Mit dem neuen Befehl Parameter kopieren können Parameter, die für einen Funktions- oder Methodenaufruf verwendet werden, einfach an eine andere Funktion/Methode übergeben werden. Dies führt zu einem leichteren, eleganteren und besser lesbaren Code.

Kommunikation zwischen Formularen und Unterformularen

Seit 4D v20 hat die Verknüpfung einer Variablen mit einem Unterformular die Möglichkeiten der Schnittstellen und der Kommunikation zwischen Formularen und Unterformularen erweitert. Die Kommunikationsmittel werden nun durch zwei neue Befehle vereinfacht: OBJECT Get subform container value und OBJECT SET SUBFORM CONTAINER VALUE.

Neuer Befehl zum Abrufen detaillierter Informationen über Lizenzen

4D v20 wird mit einem neuen Befehl ausgeliefert, der alle Informationen über Ihre Lizenznutzung liefert: Get License Usage. Wir haben auch unsere Diagnoseprotokolle erweitert. Dank dieser Funktion können Sie den Lizenzverbrauch auf Ihrem Server verfolgen, Ihre Nutzung optimieren und für Ihren zukünftigen Bedarf planen.

Mehr Optionen für den Befehl OBJECT SET enterable

Der Befehl OBJECT SET ENTERABLE wurde erweitert, so dass Sie ein Feld, das nicht bearbeitet werden kann, besser verwalten können. Als dritter Parameter unterstützt der Befehl einen Boolean oder eine Ganzzahl.

  • Sie können den Befehl also wie bisher verwenden, ohne Ihren Code zu ändern, indem Sie einen Booleschen Wert übergeben. Nur die Eigenschaft enterable wird geändert (False oder True).
  • Oder Sie können eine ganze Zahl übergeben. So können Sie die enterable- und focusable-Eigenschaft für Ihr Feld festlegen.

Zugriff auf Methodenparameter, die nicht existieren

4D v20 erlaubt den Zugriff auf alle Methodenparameter ohne Fehler, auch wenn einige von einem Aufrufer nicht übergeben wurden. Der Code ist ohne das wiederholte „if“-Schlüsselwort übersichtlicher und lesbarer.

Ein Blob-Attribut in einem Objekt erstellen

Mit der Einführung von Klassen ist der Bedarf an der Speicherung von Daten in Objekten gestiegen, insbesondere von Daten in Form von Blobs. Aus diesem Grund unterstützt 4D v20 die Kapselung von Blobs in Objekten.

Abgesehen vom Speicheraspekt ist das Blob-Objekt ein Referenztyp, der den Speicherverbrauch senkt und die Geschwindigkeit deutlich erhöht.

Verwaltung von Byte Order Mark (BOM) und End of Line (EOL)

4D hat sich nahtlos an die Best Practices für die Verwaltung bestimmter unsichtbarer Zeichen in Textdateien angepasst. Deshalb schreibt 4D von nun an Textdateien ohne BOM. Und unter macOS verwendet 4D LF als EOL-Zeichen. Dies geschieht völlig automatisch für alle von 4D geschriebenen Dateien, wie 4DSettings, 4dm, 4DForm, etc.

Für die Kompatibilitätseinstellungen gibt es neue Optionen, die es TEXT TO DOCUMENT und File.setText() ermöglichen, Dateien ohne BOM zu erzeugen und LF als EOL-Zeichen unter macOS zu verwenden, wenn die optionalen Parameter „charSet“ und „breakMode“ fehlen. Weitere Details finden Sie in der Dokumentation.

Standard-.gitignore-Datei in neuen Projekten

Der Projektmodus ermöglicht es Ihnen, Änderungen mit Git (Versionskontrollsystem) zu verfolgen, aber oft möchten Sie Ihre Projektdateien nicht im Git-Repository verfolgen. Mit 4D v20 können Sie festlegen, was in einem neuen Projekt nicht verfolgt werden soll, indem Sie im Projektordner automatisch eine Standard- .gitignore-Datei mit einer Liste von auszuschließenden Dateien und Ordnern hinzufügen.

Automatisches Signieren von Komponenten auf dem Mac

Mit 4D v20 und auf Mac signiert 4D die erstellten Komponenten automatisch mit den vom Benutzer definierten Zertifikaten oder einer Adhoc-Signatur, wenn kein Zertifikat angegeben wurde. Dies ermöglicht es Komponentenentwicklern, signierte Komponenten zu verteilen, so dass Endanwender sie nicht signieren müssen, bevor sie sie verwenden.

Anzeigen der Online-Dokumentation direkt aus dem Code-Editor

Sie können auf die Details einer Klassenfunktion zugreifen, ohne auf der Dokumentationsseite suchen zu müssen. Drücken Sie einfach die F1-Taste oder klicken Sie im Kontextmenü auf den Eintrag Gehe zu Definition….

Emails

POP3: Nur den E-Mail-Kopf herunterladenblank

Beim Abrufen von E-Mail-Nachrichten mit POP3 ist es möglich, nur die Kopfzeilen der Nachricht abzurufen (die Informationen wie Absender, Betreff und Datum enthalten), ohne den gesamten Nachrichtentext herunterzuladen.

Das Abrufen nur der Kopfzeilen kann hilfreich sein, wenn Sie die Liste der Nachrichten in Ihrem Postfach schnell durchsuchen möchten, um zu entscheiden, welche Sie herunterladen und vollständig lesen möchten.

Ab 4D v20 wird der Funktion POP3Transporter.getMail() ein neuer Parameter hinzugefügt, mit dem Sie Ihre E-Mails ohne den Textkörper empfangen können.

IMAP: Mailbox-ID und Mail-Schlüsselwörterblank

4D v20 bringt zwei praktische Funktionen für IMAP-Transporter:

Die erste Funktion ist die Möglichkeit, benutzerdefinierte E-Mail-Schlüsselwörter zu verwalten, wenn Sie mit bestimmten IMAP-Mailservern und -Clients interagieren. Mit benutzerdefinierten Schlüsselwörtern können Sie E-Mails mit bestimmten Bezeichnungen oder Kategorien versehen, um sie später leichter zu organisieren und zu finden. Mit dieser neuen Funktion in 4D v20 können Sie über den IMAP Transporter benutzerdefinierte E-Mail-Schlüsselwörter hinzufügen, entfernen oder auflisten.

Die zweite Funktion ist die Unterstützung von Mailbox-IDs im IMAP-Transporter. Wenn Sie mit IMAP-Postfächern arbeiten, können diese umbenannt oder verschoben werden, was die Nachverfolgung im Laufe der Zeit erschwert. Mit der Mailbox-ID-Unterstützung in 4D v20 können Sie ein bestimmtes Postfach identifizieren, auch wenn es umbenannt oder verschoben wurde. Dies kann nützlich sein, um wichtige Postfächer zu verfolgen, z. B. solche, die archivierte Nachrichten oder Nachrichten von bestimmten Absendern enthalten.

Native Unterstützung von Microsoft 365

Da immer mehr Kunden ihren E-Mail-Bedarf auf Microsoft 365 umstellen, bietet 4D v20 eine Lösung zur Vereinfachung der E-Mail-Verwaltung.

Die neuesten Automatisierungsfunktionen ermöglichen die einfache Automatisierung von Microsoft 365-E-Mail-Vorgängen über integrierte Befehle. Diese Operationen umfassen:

  • Senden, Empfangen von E-Mails und Auflisten Ihrer Postfachordner
  • Verschieben einer E-Mail von einem Ordner in einen anderen,
  • auf eine E-Mail antworten und eine Konversation erstellen,
  • Erstellen eines E-Mail-Entwurfs und Speichern in einem Ordner Ihrer Wahl,
  • und eine E-Mail löschen.

Microsoft365: Verwaltung von Ordnern blank

Microsoft schafft die Basis-Authentifizierung für IMAP und POP3 ab, was bedeutet, dass die Benutzer eine sicherere Authentifizierungsmethode für den Zugriff auf ihre E-Mail-Daten verwenden müssen. Die Graph API ist ein sicherer und moderner Weg, um auf Daten in Microsoft 365 zuzugreifen, einschließlich E-Mail-Daten.

Mit den neuen Funktionen in 4D NetKit können Sie jetzt Ihre Postfächer mit der Microsoft Graph API programmieren und verwalten (erstellen, löschen, umbenennen und Informationen abrufen).

Benutzerinformationen von Azure abrufen

Microsoft bietet nicht nur Zugriff auf Office-Anwendungen, sondern auch ein Azure-basiertes Active Directory, mit dem sich Benutzer über einen Webbrowser für Dienste wie Microsoft Sharepoint oder OneDrive anmelden können. Alle Microsoft-Dienste nutzen das gleiche Single Sign-On, das auf der E-Mail-Adresse basiert. Ab 4D v20 können Sie mit 4D NetKit Teil dieses Konzepts sein und es Anwendern ermöglichen, sich mit ihren gewohnten Unternehmensdaten bei Ihrer Anwendung anzumelden.

Neben Single Sign-On können Sie auch Informationen über einen authentifizierten Benutzer abrufen, z. B. E-Mail, Abteilung und Telefonnummer. Wenn der Administrator es zulässt, können Sie auch Details über die Kollegen des Benutzers innerhalb desselben Unternehmens abrufen.

Bcrypt-Unterstützung für Kennwörter

Ab 4D v20 werden alle Passwörter mit dem bcrypt-Algorithmus gehasht. Dieser Algorithmus benötigt viel mehr Zeit für die Berechnung, 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 Kennwort mit dem Legacy- oder dem bcrypt-Hash gespeichert ist, so dass sich die Benutzer weiterhin verbinden können, ohne ihr Kennwort zu ändern.

Verbesserungen am HTTP-Client

Um die Syntax und Funktionalität von 4D weiter zu verbessern, haben wir beschlossen, die HTTP-Client-Befehle in 4D zu modernisieren. Mit 4D v20 gibt es eine neue Möglichkeit, HTTP-Anfragen auszuführen: HTTP-Klassen. Außerdem gibt es einige HTTP-Klassen-Funktionen, darunter komprimierte Antworten, Chunked Responses und Umleitungen.

Code-Editor

Schnelles Springen zu verschiedenen Funktionen einer Klasse

Klassen bestehen aus mehreren Funktionen von unterschiedlicher Länge. Daher ist es nicht immer einfach, die zu ändernde Funktion zu finden oder von einer Funktion zu einer anderen zu wechseln. Sie können zwar den Explorer verwenden, der die Klassen und Funktionen anzeigt, aber wenn Sie im Editor-Fenster kodieren, wollen Sie keine Zeit mit dem Wechseln der Fenster verschwenden.

Mit 4D v20 wird die Liste der Funktionen in Ihrer Klasse in der Symbolleiste des Code-Editors angezeigt, so dass Sie schnell zu einer bestimmten Funktion springen können.

Kommentar-Tags

4D v20 bringt Kommentare auf ein neues Niveau mit Kommentar-Tags , um Ihre Kommentare besser zu organisieren. Tags werden verwendet, um Kommentare zu klassifizieren, indem das Tag einfach an den Anfang der Kommentarzeile gesetzt wird. Wir haben drei Tags zu Ihrer Verfügung gestellt:

  • MARK
  • TODO
  • FIXME

Mit dem MARK-Tag können Sie Ihren Code in Abschnitte unterteilen. Sie können ihn auf drei verschiedene Arten schreiben. Die beiden anderen Tags, TODO und FIXME, sind ähnlich aufgebaut. Der Unterschied besteht darin, dass sie unterschiedliche Symbole in der Liste haben, die es Ihnen ermöglichen, Ihren Code zu organisieren und Prioritäten für Ihre zukünftigen Aktionen zu setzen.

Syntax der Objektprüfung

Dieautomatische Vervollständigung vereinfacht das Schreiben von Code und begrenzt Fehler in Funktionsnamen. Ganz vermeiden lassen sie sich damit aber nicht: Es ist leicht, zwei Buchstaben zu vertauschen oder einen Großbuchstaben zu vergessen. Und dann verbringt man viel Zeit damit, herauszufinden, warum der Code nicht funktioniert. Was liegt also näher, als 4D zu bitten, zu prüfen, ob die Klassen oder Funktionen bereits existieren? Ab 4D v20 wird im Code-Editor eine Warnung angezeigt, wenn Sie eine Funktion aufrufen, die nicht existiert.

Code-Editor-Anpassung

Zusätzlich zur Anpassung des Fensters und des Codebereichs bietet 4D v20 zwei neue Anpassungsoptionen:

  • Ein- und Ausblenden der zehn Zwischenablagen.
  • Das Symbol „Listen ein-/ausblenden“ wurde nach unten rechts neben die Listen verschoben.

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 v20 haben wir Menüpunkte und eine neue Liste im Code-Editor hinzugefügt, mit denen Sie besser durch die verschiedenen Elemente eines Projekts navigieren können.

Anzeigen der Online-Dokumentation direkt aus dem Code-Editor

Mit 4D v20 können Sie auf die Details einer Klassenfunktion zugreifen, ohne auf der Dokumentationsseite suchen zu müssen. Drücken Sie einfach die F1-Taste oder klicken Sie im Kontextmenü auf den Eintrag Gehe zu Definition….

Web

Debugging auf dem Server mit skalierbaren Websitzungen

Skalierbare Webs itzungen sind eine wesentliche Verbesserung. 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. Ab 4D v20 haben wir das Debugging auf dem Server vereinfacht , indem wir den Debugger einfach an den Server angehängt haben.

Neue Windows System Rendering Engine

Ab 4D v20 verwendet 4D bei Verwendung der System Rendering Engine Microsoft Edge WebView2. Diese Änderung ermöglicht es Ihnen, von einem modernen Browser mit den neuesten Funktionen und Sicherheitsupdates zu profitieren. Microsoft Edge kann zum Beispiel zur Anzeige von PDFs verwendet werden.

Dateien und Verzeichnisse

Datei-Handles

Beim Schreiben und Lesen stehen Ihnen die Funktionen setText und getText zur Verfügung, um den gesamten Inhalt zu lesen oder zu schreiben. 4D v20 bietet File Hand les für den Fall, dass Sie eine oder mehrere Zeilen in einem bestehenden Dokument lesen oder hinzufügen möchten.

Datei-Handles sind Objekte, die auf der Grundlage von „File“-Objekten erstellt werden und über Funktionen verfügen, mit denen Sie auf beliebige Teile von Dokumenten zugreifen und deren Inhalt sequentiell lesen oder schreiben können.

UNTERSTÜTZUNG VON LZMA, DEM NEUEN KOMPRESSIONSALGORITHMUS

Mit 4D V20 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 Komprimierungsalgorithmus, den Verschlüsselungsalgorithmus und andere Optionen auswählen.

Listenfeld

Automatische Zeilenhöhen in sammlungsbasierten Listboxen

Automatische Zeilenhöhen waren bereits für array-basierte Listboxen möglich, so dass sie die Höhe jeder Zeile automatisch an ihren Inhalt anpassen. 4D v20 bietet diese Möglichkeit nun auch für Listenfelder , die auf Sammlungen und Entity-Auswahlen basieren.

Verabschieden Sie sich von der ALT-Taste

Ab 4D v20 müssen Sie bei Listenfeldern und der Drag & Drop-Aktion nicht mehr die Alt-Taste gedrückt halten, um mehrere Elemente gleichzeitig zu verschieben.

Horizontales und vertikales Zell-Padding

Die Leistungsfähigkeit von Listenfeldern wird mit 4D v20 durch zwei neue Eigenschaften erweitert: die horizontale und vertikale Auffüllung(die inneren Ränder oder der Abstand zwischen dem Inhalt eines Elements und seinem Rand). Sie geben Ihren Listenfeldern neue Darstellungsmöglichkeiten und Ihre Oberfläche erhält ein noch professionelleres Aussehen.

Diese Eigenschaften können global für die gesamte Listbox oder für jedes Element, wie Spalten, Kopf- oder Fußzeilen, festgelegt werden. Einmal für die Listbox definiert, werden sie durch Vererbung auf jedes Unterobjekt der Listbox angewendet. Aber natürlich kann jedes Unterobjekt seine eigenen Einstellungen haben.

Die Einstellung der Auffüllung kann entweder:

  • über den Designmodus aus der Liste der Eigenschaften unter „Koordinaten und Größe“.
  • oder durch Programmierung mit dem Befehl LISTBOX SET PROPERTY dank zweier neuer Konstanten, lk cell horizontal padding und lk cell vertical padding.

Gleichzeitiges Entwickeln auf 4D Server im Projektmodus

Wenn Sie zu den Entwicklern gehören, die sich die Möglichkeit gewünscht haben, gleichzeitig mit Teamkollegen auf einem einzigen Entwicklungsserver zu arbeiten, dann erfüllt Ihnen 4D v20 diesen Wunsch dank eines neuen Modus für die Verbindung eines 4D Clients mit einem 4D Server: dem Entwicklungsmodus.

Entwickler können im Entwicklungsmodus die Datenbankstruktur, Methoden, Formulare und Einstellungen ändern. Wir haben das Sperrsystem geändert, um die gleiche Funktionalität wie im Binärmodus zu bieten.

Windows SDI-Anwendung testen

Es ist schon lange her, dass Sie Ihren Kunden zusammengeführte Anwendungen im SDI-Modus anbieten konnten. Das war ein großer Schritt nach vorn für die UX von Windows-Anwendungen.

Mit 4D v20 ist das Testen einer SDI-Anwendung ganz einfach: Sie können das Ergebnis Ihrer Anwendung sehen, ohne dass Sie Ihre Standalone- oder Client-Anwendung erstellen müssen.

System-Worker: Starten Sie einen externen Prozess asynchron

Eine weitere sehr gefragte Funktion ist für Sie verfügbar. Manchmal müssen Sie Prozesse im Hintergrund laufen lassen und bestimmte Aktionen auf der Grundlage des Ausgabecodes durchführen, sobald dieser verfügbar ist, während der Prozess noch läuft. Zum Beispiel, um einen Fortschrittsbalken anzuzeigen. 4D ermöglicht es Ihnen, einen Hintergrundprozess mit der neuen Klasse 4D.SystemWorker zu starten und automatisch Callback-Methoden auszuführen, wenn der Prozess Informationen zurückgibt. Wenn Sie dies also mit einer Schnittstelle verwenden, bleibt die Schnittstelle für den Benutzer ansprechbar, während der externe Prozess läuft, und wenn er beendet ist, können Sie das Ergebnis für Ihren Kunden anzeigen.

Umstrukturierung der Diagnoseprotokolle

Die Diagnoseprotokolle sind für die Fehlersuche immer wichtiger geworden. Wir haben sie völlig neu organisiert, indem wir ihren Inhalt verbessert und eine Möglichkeit hinzugefügt haben, den Inhalt zu filtern (Protokollstufen wie Trace, Debug, Info, Warnung und Fehler). Dank des neuen Datenbankparameters Diagnoseprotokollebene können Sie den Fluss der Protokolle im Diagnoseprotokoll steuern und es klein halten, während Sie das protokollieren, was Sie wirklich brauchen.

Konfigurationsdatei für Loggin

Im Rahmen unseres Projekts zur Verbesserung der Logs fügt 4D 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 über eine Konfigurationsdatei zu helfen

Benutzeroberfläche

Weiterentwicklung von Formularobjektenblank

Damit Sie die schönsten Oberflächen gestalten können, stehen Ihnen neue Möglichkeiten zur Verfügung:

  • Für Schaltflächen, Optionsfelder und Kontrollkästchen haben wir neue Einstellungen für den Text und das Symbol hinzugefügt. Die Eigenschaft „Textausrichtung“ und die neue Eigenschaft „Image hugs title“.
  • Für Optionsfelder und Kontrollkästchen wurde die Anzahl der Zustände für das Symbol verbessert (Wahr, Falsch, Rollover und Deaktivieren), um eine bessere Darstellung für den Endbenutzer zu ermöglichen.

Runde Ecken

Mit 4D v20 können die Ecken von statischen Texten und Eingabetexten dank des neuen Attributs „Eckenradius“ abgerundet werden. Der Wert kann über die Benutzeroberfläche (die Eigenschaftsliste), CSS oder Code festgelegt werden.

Hohe DPI unter Windows: Unterstützung für hochauflösende Bildschirme

High DPI steht für High Dots Per Inch. Er steht für die Pixeldichte; je höher der DPI-Wert, desto höher ist die Pixeldichte. Bei 4K-Bildschirmen kann die Pixeldichte so hoch sein, dass bei der üblichen Anzeige alle Symbole und Steuerelemente extrem klein dargestellt werden. In Windows können Sie daher die Skalierung von Text, Symbolen und Steuerelementen ändern. Auf 4K-Bildschirmen ist diese Funktion standardmäßig aktiviert. Wir haben hohe DPI-Werte zuerst auf dem Mac unterstützt und sind jetzt auch mit Windows voll kompatibel. Das Ergebnis ist eine bessere Text- und Bildqualität.

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 dass Sie Ihren Nutzern die Wahl zwischen hellen und dunklen Anwendungen lassen können. Mit 4D v20 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.

Optimierung der Struktur-Editor-Symbolleiste

Die Symbolleiste wurde überarbeitet, um alle 4D Fenster zu modernisieren und zu vereinheitlichen.

Wenn Sie den Mauszeiger über Tabellen, Felder oder Beziehungen bewegen, werden hilfreiche Informationen in der Statusleiste angezeigt. Neu in 4D v20 ist die Anzeige von Beziehungsnamen direkt in der Statusleiste. Sie müssen nicht mehr das Eigenschaftenfenster öffnen.

Daten-Explorer

Der 4D Data Explorer ist eine Webbrowser-Oberfläche, die von Administratoren und Entwicklern per Fernzugriff (über eine sichere HTTPS-Verbindung) oder lokal auf demselben Rechner wie die geöffnete Datenbank genutzt werden kann.

Mit 4D v20 bietet der Data Explorer jetzt zwei wichtige Verbesserungen.

Visualisieren Sie die Beziehungen zwischen Ihren Daten

Dieerste Funktion ermöglicht es Ihnen, die Beziehungen zwischenIhren Daten zu visualisieren, was das Durchsuchen und Auffinden relevanter Informationen in Ihrer Datenbank erleichtert.

Data Explorer eingebettet in 4Dblank

Diezweite Neuerung ist das Hinzufügen eines Symbols für den Data Explorer in der Symbolleiste, wodurch es noch einfacher wird, ihn in 4D statt in einem externen Webbrowser zu öffnen. Benutzer können mit nur einem Klick direkt von der Symbolleiste aus auf den Data Explorer zugreifen, was Zeit spart und die Produktivität erhöht.

Bereitstellung

VERWENDUNG DUPLIZIERTER, ZUSAMMENGEFÜHRTER CLIENT-ANWENDUNGEN

Als Softwarehersteller haben einige Ihrer Kunden manchmal viele Instanzen Ihrer zusammengeführten Serveranwendung, zum Beispiel eine zusammengeführte Serveranwendung für jede Konzerngesellschaft. Bei dieser Art von Bereitstellungsarchitektur bitten die Mitarbeiter Ihres Kunden Sie häufig, eine zusammengeführte Client-Anwendung für jede zusammengeführte Server-Anwendung auf ihrem Computer zu installieren, da sie die Software für jedes Unternehmen verwenden möchten. Von nun an steht Ihnen ein neuer buildApp-Schlüssel zur Verfügung, mit dem jede duplizierte zusammengeführte Client-Anwendung ihren eigenen Benutzereinstellungsordner verwenden kann (basierend auf ihrem Anwendungspfad): ClientUserPreferencesFolderByPath.

Verwaltung von Verzeichnisdateien in zusammengeführten Serverprojekten

Auf der Serverseite ist der aktuelle Benutzer immer der Designer; daher ist der Zugriff auf den Runtime-Explorer immer erlaubt. Wenn Sie dieses Verhalten ändern möchten, können Sie mit 4D v20 den Zugriff von Administratoren auf den Datenexplorer und den Runtime-Explorer in Ihren zusammengefassten Servern einschränken.

Reduzieren Sie die Größe von Client-Anwendungen & mehr

4D v20 bringt viele Verbesserungen für die Erstellung von 4D Anwendungen. Zunächst einmal können Sie unnötige Bibliotheken (wie CEF/Web Area, PHP, Mecab und 4D Updater) entfernen, um die Größe Ihrer Anwendungen zu reduzieren. Wir haben auch das Endverzeichnis geändert, wenn Sie eine kompilierte Struktur erstellen, um denjenigen entgegenzukommen, die mehrere kompilierte Versionen derselben Struktur verwenden. Und für unsere japanischen Kunden haben wir die japanische Version von 4D und die internationale Version auf macOS zusammengeführt.

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 v20 führt eine neue Funktion ein, die dieAnzahl der zu übertragenden Dateien von Ihrem Mac auf Ihren Windows Rechner reduziert. 4D erzeugt außerdem ein Verzeichnis für die kompilierte Datenbank, wenn der Client auf dem Mac erstellt wird. Dieser Ordner enthält nur den kompilierten Code für Ihre Anwendung und ist daher relativ klein.

CI/CD: Bauen Sie Ihre kompilierte Struktur oder Komponente mit Build4D

Mit der Einführung des Projektmodus ist es ziemlich einfach, die Komponenten Ihrer Projekte zu manipulieren. In den letzten Versionen haben wir mehrere Funktionen hinzugefügt, die es Ihnen ermöglichen, Ihre eigene Build Chain zu erstellen, die an Ihr Team, Ihre Arbeitsmethoden und Ihre Bedürfnisse angepasst ist.

Um Ihnen zu helfen, Ihre eigene Build Chain zu erstellen oder 4D in ein Continuous Integration Tool zu integrieren, haben wir eine Komponente namens Build4D entwickelt , die auf GitHub mit den Quellen verfügbar ist. Für diesen ersten Schritt erlaubt Build4D die Erstellung einer kompilierten Struktur und einer Komponente. Wir werden die Komponente weiter ausbauen, um Ihnen die Verwaltung einer Einzelplatz-, Client- oder Server-Anwendung zu ermöglichen.

Gemeinsame Nutzung lokaler Ressourcen zwischen Benutzern ON Windows Remote Desktop Services

Wenn Sie zu den Entwicklern gehören, die nach einer Funktion gefragt haben, die das Herunterladen lokaler Ressourcen in einen gemeinsamen Ordner mit den Windows Remote Desktop Services anstelle des Benutzerkontoverzeichnisses ermöglicht, dann hat 4D v20 gute Neuigkeiten für Sie.

Wir haben die aktuelle Architektur optimiert, indem wir eine neue Option für Projekte im BuildApp-Prozess entwickelt haben, die die gemeinsame Nutzung lokaler Ressourcen ermöglicht.

Sie wird durch diesen neuen BuildApp XML-Schlüssel aktiviert: /Preferences4D/BuildApp/CS/ShareLocalResourcesOnWindowsClient

Diese Optimierung führt zu Folgendem:

  • Ein Zeitgewinn, da die lokalen Ressourcen nicht mehr von jedem Benutzer vom Server heruntergeladen werden müssen,
  • und einen Gewinn an Speicherplatz, da die lokalen Ressourcen nicht mehr für jeden Benutzer in einer Remotedesktopdienstumgebung dupliziert werden.

ORDA

4D v20 bietet weitere Verbesserungen für ORDA.Object Relational Data Access ist eineinnovative Art des Datenzugriffs, die die Vorteile objektorientierter Programmierung mit denen relationaler Datenbanken kombiniert und es Entwicklern ermöglicht, sich auf die Lösung von Geschäftsproblemen zu konzentrieren, anstatt den Datenzugriff zu verwalten.

4D v20 bringt:

Verwaltung von Benutzerberechtigungen (REST Server)

Zusätzlich zu der Möglichkeit, eine Datenklasse und einige ihrer Attribute als REST-Ressource freizugeben oder nicht freizugeben – was ein bequemer Weg war, den Zugriff auf Ihre Daten einzuschränken – geht 4D einen Schritt weiter und bietet ein leistungsstarkes und vollständig anpassbares System zum Schutz Ihrer Daten vor unbefugten Benutzern. Ein System zum Schutz Ihrer Daten hängt davon ab, wer auf sie zugreift und auf welche Daten zugegriffen wird.

Diese neue Funktion basiert auf ORDA-Konzepten und skalierbaren Websitzungen. Sie deckt alle Web-Prozesse ab, wie z.B. REST-Anfragen, Anfragen, die auf einem Remote-Datenspeicher empfangen werden, und Web-Prozesse wie 4DACTION oder 4D-Tags.

Optimierung der Leistung mit vollständiger Kontrolle über REST-Anfragen

4D v20 gibt Ihnen eine bessere Kontrolle über die ORDA-Kontexte und den Cache für Client/Server und REST, um die Leistung zu verbessern.

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, Ihrer mobilen Anwendung oder Ihrer ORDA-basierten Benutzeroberfläche verwenden, zum Beispiel.

ORDA-Aliase

4D v20 wird mit einem neuen ORDA Konzept ausgeliefert: Aliasen. Sie sind die logische und komplementäre Fortführung von berechneten Attributen. Wie der Name schon sagt, ist ein Alias eine Abkürzung für ein bestehendes Datenspeicherobjekt. Sie werden wie die berechneten Attribute in der „Entity Dataclass“ definiert. Während ein berechnetes Attribut jede beliebige Berechnung oder Formel verarbeiten kann, ist ein Alias nur eine Abkürzung, die die Entwicklung schneller und einfacher macht. Ein Beispiel für die Verwendung von Aliasen ist der einfache Zugriff auf verknüpfte Attribute (was bedeutet, dass die Komplexität einer verknüpften Datenbank verborgen wird).

Deaktivieren der Standardzuordnung von NULL-Werten zu leeren Werten

Wenn Sie ein neues Feld in Ihrer Datenbank anlegen, können Sie in 4D wählen, ob NULL-Werte auf Leerwerte abgebildet werden sollen oder nicht. Ab 4D v20 wird 4D in neuen Projekten den NULL-Wert nicht mehr standardmäßig auf fehlende Daten abbilden. Dies ist vorteilhaft, da ORDA perfekt für die Arbeit mit NULL-Werten ausgelegt ist und Ihnen viele unpraktische Workarounds erspart.

Pessimistisches Lock Management VIA RestModel Update

Mit 4D v20 können Sie die REST API nutzen , um eine Entität zu sperren oder zu entsperren. Dies ist besonders nützlich, um:

  • Ihren Code konsistent zu halten, wenn Sie es gewohnt sind, mit der REST-API zu arbeiten. Es ist nicht notwendig, eine Funktion in ORDA Data Model Classes zu schreiben, um eine Entität zu sperren/entsperren.
  • die pessimistischen Sperren mit der REST-API reibungslos zu verwenden.

Volle Unterstützung von BLOB

Ab 4D v20 werden Blobs in ORDA vollständig unterstützt, wie jeder andere Typ auch, so dass ORDA-Entwickler die ORDA-Syntax verwenden können, um einen Blob in einer Datenbank zu speichern.

Vergleichen Sie zwei Entity-Selektionen

Sie benötigen robuste und optimierte Funktionen, um effizient mit objektorientierter Programmierung zu arbeiten und so wenig Zeilen Code wie möglich zu schreiben. Deshalb bieten wir mit 4D v20 eine neue Funktion für das EntitySelection Objekt an: die selected() Funktion. Mit ihr können Sie zwei Entity-Auswahlen prüfen und vergleichen.

4D Write Pro

4D Write Pro hat sich im Vergleich zu den letzten Versionen stark verbessert. Wir, das 4D Team, haben darauf hingearbeitet, 4D Write Pro zu einem leistungsstarken , vorlagenbasierten Dokumentengenerator zu machen, der die manuelle Erstellung von Dokumenten überflüssig macht und das Fehlerrisiko reduziert.

Mit 4D Write Pro können Sie automatisch vorausgefüllte Dokumente mit kontextbezogenen Informationen füttern und generieren, indem Sie Daten direkt aus der 4D Datenbank abrufen. Dazu gehören u. a. Namen, Daten, Adressen und Nummern. 4D Write Pro fügt diese Informationen dann mit Ihren Vorlagen zusammen und sorgt so für einen straffen und effizienten Prozess der Dokumentenerstellung.

4D v20 bietet leistungsstarke Funktionen wie Kopfzeilen, Datenquellen und Zeilenübertragungen, um nur einige zu nennen. Unabhängig davon, ob Sie ein Geschäftsmann oder ein Entwickler sind, werden Sie feststellen, dass diese Funktionen äußerst nützlich sind, um Ihren Workflow und Ihre Produktivität zu verbessern.

4D Write Pro & Textboxen: docx Import/Export Optionenblank

MitTextboxen können Sie einen fließenden Container einfügen, der Text, Tabellen, Bilder, Formeln und andere Elemente an beliebiger Stelle in Ihrem Dokument enthält. Diese Funktion wurde in v20 verbessert, um den Export und Import dieser Elemente aus und in docx-Dokumente zu ermöglichen.

Definieren von Datenkontexten

4D v20 öffnet die Welt von ORDA und objektorientierter Entwicklung für 4D Write Pro Dokumente. 4D Write Pro Dokumente enthalten oft Formeln, die Daten oder Berechnungen in Abhängigkeit von der Datenbank zurückgeben. Dank der Kontexte ist die Zuordnung dieser Daten zu Dokumenten so einfach wie die Verwendung des Schlüsselworts This. Ein perfekter Weg, um Vorlagen und personalisierte Dokumente mit 4D Write Pro zu erstellen.

Dynamisches Füllen von Tabellen mit Entity-Selektionen und Sammlungen

Das manuelle Befüllen von Tabellen mit Daten ist jedes Mal eine mühsame Aufgabe. Hier kommt der Datenkontext als unschätzbare Option ins Spiel, die die Welt von ORDA und objektorientierter Entwicklung für 4D Write Pro Vorlagen öffnet.

Es ist nun möglich, eine „Datenquelle“ für die Tabellen von 4D Write Pro zu definieren. Ob es sich um eine Entity-Auswahl oder eine Sammlung handelt, diese „Datenquelle“ wird automatisch die Zeilen dieser Tabellen füttern. Die Tabellen werden automatisch auf Basis der Auswahl vergrößert und bei Bedarf um zusätzliche Seiten ergänzt. Dies ermöglicht dem Endbenutzer Ihrer Anwendung, Vorlagen zu entwerfen oder zu ändern, die automatisch mit Daten gefüllt werden.

Untere Übertragszeilen (Zwischensummen)

Stellen Sie sich vor, Sie haben eine große Verkaufstabelle, die sich über mehrere Seiten erstrecken kann. Am Ende einer Seite möchten Sie die Zwischensumme berechnen, sie auf die nächste Seite übertragen und sie in die Berechnungen auf dieser Seite einbeziehen. Dies ist oft notwendig, manchmal sogar gesetzlich vorgeschrieben, z. B. bei der Bearbeitung langer Rechnungen.

4D v20 ermöglicht das Einfügen einer „Zwischensummen“-Zeile am unteren Ende eines jeden Teils der jeweiligen Tabellen, die automatisch ausgefüllt werden kann.

Dies kann entweder erfolgen:

  • Über beide Oberflächen (Symbolleiste und Seitenleiste). Das Tabellenmenü enthält einen neuen Punkt „Untere Übertragszeile“.
  • Oder durch Programmierung, dank des neuen Attributs wk bottom carry over row.

Und um den Inhalt der Zellen in dieser Übertragszeile zu definieren, kann das neue Attribut previousItems mit allen verfügbaren Funktionen (min/max/sum/etc.) für Sammlungen oder Entitätsselektionen verwendet werden.

Break Rows von Tabellenblank

Wenn Sie eine Liste von Daten haben, z. B. eine Liste von Personen mit ihren Kontinenten, Ländern und Städten, möchten Sie sie vielleicht nach Kontinent, dann nach Land und dann nach Stadt gruppieren. So lassen sich die Daten leichter verstehen und analysieren.

Wenn eine Tabelle mit Daten aus einer sortierten Datenquelle gefüllt wird, kann 4D Write Pro eine Umbruchzeile einfügen, sobald sich der Wert des Sortierkriteriums ändert. So kann der Anwender die Daten nach den gewünschten Kriterien gruppieren.

In einem anderen Szenario kann diese Funktion auch zur Erstellung von Berichten verwendet werden, die auf Unternehmensbeziehungen basieren, wobei eine Liste von Mitarbeitern nach dem Unternehmen auf jedem Kontinent gruppiert werden kann. Durch Angabe der entsprechenden Sortierkriterien kann 4D Write Pro separate Gruppen für jedes Unternehmen auf jedem Kontinent erstellen.

4D v20 wird mit neuen Attributen ausgeliefert, um das Layout von Tabellen besser zu definieren. Damit können Sie nicht nur komplexe, sondern vor allem optisch ansprechende Dokumente mit 4D Write Pro erstellen: Begrüßen Sie den Seitenumbruch innerhalb von Tabellenzeilen. Dies ist nützlich, wenn die Zellen längere Texte (oder mehrere Absätze) enthalten. Es ist vielleicht interessant zu definieren, dass eine Zelle (und damit eine Tabellenzeile) auch in zwei Teile geteilt werden kann, um den verfügbaren Platz auf den Seiten des Dokuments zu füllen:

  • wk page break inside paragraph kann natürlich auf Absätze angewendet werden, aber auch auf ein beliebiges Ziel wie das Dokument selbst, einen bestimmten Abschnitt, einen Textbereich usw. In allen Fällen wird das Attribut den Absätzen innerhalb des Ziels zugewiesen. Dies ist eine einfache Programmierfunktion.
  • wk page break inside table ermöglicht es, eine Tabelle in zwei (oder mehr) Teile aufzuteilen, die Trennung erfolgt zwischen zwei Zeilen der Tabelle (wie üblich)
  • wk page break inside row ermöglicht ebenfalls die Aufteilung einer Tabelle, aber diesmal innerhalb von Zeilen. Beachten Sie, dass diese Option von der vorherigen abhängig ist. Wenn eine Tabelle nicht geteilt werden kann, können es auch ihre Zeilen nicht.

Bitte beachten Sie, dass die Option Seitenumbruch innerhalb von Tabellenzeilen in der Symbolleiste und in den Widgets der Seitenleiste verfügbar ist.

Tabellenüberschriften

Diese Funktion bietet eine weitere nützliche Option für die Tabellendarstellung, die durch Programmierung oder über die Widgets der 4D Write Pro Oberfläche verfügbar ist. Ab 4D v20 können Sie Überschriften in Tabellen definieren und diese automatisch nach einem Spalten- oder Seitenumbruch wiederholen.

Erkennung von Dokumentänderungen

Wenn sich ein 4D Write Pro Dokument im Bearbeitungsmodus befindet, ist es oft hilfreich zu wissen, ob es vom Endanwender tatsächlich geändert wurde. Anhand dieser Information können Aktionen oder Schnittstellen angepasst werden, um die Benutzerfreundlichkeit zu erhöhen.

Die neue Eigenschaft document.modified erkennt Änderungen in einem Dokument schnell und führt entsprechende Aktionen aus. Entweder auf transparente Weise(z. B. automatisches Speichern, wenn ein Dokument geöffnet bleibt) oder durch intelligente Anpassung der Schnittstelle an die jeweiligen Bedingungen.

Benutzerfreundliche Anzeige von Formeln

Jeder liebt Formeln; sie sind ein wesentlicher Bestandteil von 4D Write Pro Dokumenten. Sie ermöglichen die Integration vieler Informationen aus der Datenbank und machen die Dokumentenerstellung intuitiver und automatischer.

Einige Formeln können jedoch vom Layout her sehr lang und für den Endanwender schwer zu lesen sein.

Deshalb bietet 4D v20 die Möglichkeit, Formeln als Symbolanzuzeigen, um Dokumente präziser und transparenter zu gestalten.

Dies ist möglich:

  • Über die Eigenschaftsliste, dank der neuen Eigenschaft „Formelquelle als Symbol anzeigen“.
  • Ein neues Element in der Schnittstelle.
  • Oder über die Programmierung, dank des neuen Attributs wk display formula as symbol.

Sichtbarkeit von leeren Bildern deaktivieren

4D Write Pro Dokumente können Bilder aus verschiedenen Quellen und in unterschiedlichen Formaten enthalten. Diese Bilder können in einigen Fällen aus völlig nachvollziehbaren Gründen nicht angezeigt werden – z. B. ungültige URLs, Formeln, die leere Bilder zurückgeben, von der Plattform nicht unterstützte Formate usw.

Sie werden jedoch immer durch ein kleines leeres Rechteck dargestellt, das ihre theoretische Position anzeigt. 4D v20 wird mit einer neuen Ansichtsoption ausgeliefert, mit der Sie leere Bilder komplett unsichtbar machen können. Dies kann auf 3 verschiedene Arten geschehen:

    • Der erste und einfachste Weg ist über die Eigenschaftsliste, die einen neuen Eintrag im Erscheinungsbild-Thema bietet.
    • Oder über die Benutzeroberfläche, in der ein neues Element erscheint. Entweder in der Symbolleiste oder in der Seitenleiste.
    • Oder durch Programmierung über den neuen Parameter wk visible empty images.

Neue Optionen für die Bildanzeige

Ab 4D v20 stehen für Inline-Bilder und verankerte Bilder in 4D Write Pro Dokumenten dank des neuen Attributs wk image display mode sieben neue Formatierungsarten zur Verfügung:

  • Skaliert (standardmäßig)
  • Abgeschnitten
  • Abgeschnitten zentriert
  • Proportional
  • Proportional zentriert
  • Repliziert
  • Repliziert zentriert

Auch die Formatierung der Bilder, die als Hintergrunddokumente, Abschnitte, Absätze usw. verwendet werden, wurde durch das neue Attribut wk background display mode erleichtert.

Verwaltung der Sichtbarkeit von Formeln

Für 4D Write Pro Dokumente gibt es bereits mehrere Anzeigeoptionen. Wir haben die Liste um die Option wk Formelhervorhebung erweitert, 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.

Verknüpfte Absätze

Um eine bessere Kontrolle über das Layout des Dokuments zu haben, wird 4D v20 mit der Möglichkeit ausgeliefert, zu wählen, ob ein Absatz und der darauf folgende Absatz verbunden bleiben müssen (nicht durch einen automatischen Seiten- oder Spaltenumbruch getrennt).

Export im SVG-Format

4D Write Pro Dokumente können bereits in verschiedene Formate exportiert werden: pdf, normaler Text, Microsoft Word, HTML… Zu dieser Liste wurde 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.

Verbesserungen der Interface Widgets

4D v20 bringt eine Reihe von Neuerungen bei den Widgets der Benutzeroberfläche:

  • Wir haben ein Menü zum Einfügen von Formeln in beiden Oberflächen hinzugefügt.
  • Wir haben auch mehrere Attribute für Absätze hinzugefügt, um die Typografieregeln besser zu respektieren und ein lesbareres und ästhetischeres Dokument zu erhalten, wie zum Beispiel:
    • Widow- und Waisensteuerung
    • Vermeidung von Seitenumbrüchen im Inneren
    • Mit nächstem beibehalten
    • Zeilenhöhe
  • Im Seitenleisten-Widget können Sie jetzt Seitenumbrüche, Abschnittsumbrüche, Spalten und Ansichtsparameter wie Ausrichtung, Format, Typ (Entwurf, Seite oder eingebettet) oder Sichtbarkeit einiger Elemente (unsichtbares Zeichen, Kopfzeile, Fußzeile) verwalten.
  • Für das Toolbar-Widget haben wir die Möglichkeit hinzugefügt, die Felder Titel, Autor, Thema, Unternehmen und Notizen auszufüllen.

Unterstützung des dunklen Modus

Sie können endlich im hellen oder dunklen Modus auf macOS entwickeln und einsetzen. Die letzten Widgets der Bibliothek sind mit dem dunklen Modus (unter macOS) kompatibel:

  • 4D Write Pro Interface Symbolleiste
  • 4D Write Pro Schnittstelle
  • Seitenleiste Rich-Text-Bereich

Dialog für Bildeinstellungen

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 dem Formular mit der Komponentenmethode „WP PictureSettings“ angezeigt werden.

Diese neue Version ermöglicht auch das Hinzufügen eines Bildes von einer URL mit dem Toolbar-Widget.

Kontinuierliche Abschnittswechsel

Ab 4D v20 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
4D Ansicht Pro

Ob im Vertrieb, im Finanzwesen, in der Buchhaltung, bei der Datenanalyse oder in jedem anderen Beruf, in dem mit langen und unhandlichen Datensätzen gearbeitet wird – 4D View Pro ist die Antwort. Es ist ein mehrsprachiges Produkt mit direktem Zugriff auf Ihre 4D Daten, mit dem Sie alle Vorteile integrierter, leistungsstarker Tabellenkalkulationen nutzen können. Von der Möglichkeit, grafisch erweiterte Dashboards zu erstellen, die nicht mehr wie eine Tabellenkalkulation aussehen, bis hin zu Berichten, die jeden Morgen aus dem Bildschirm heraus erstellt und automatisch an das Management gesendet werden können – 4D View Pro hat alles, was Sie brauchen, um sinnvolle Geschäftsentscheidungen zu treffen.

Und mit 4D v20 ist das Produkt leistungsfähiger als je zuvor, mit einer Reihe von Funktionen, die Sie bestimmt nützlich finden werden:

Pivot-Tabellen

4D v20 Pivot-Tabellen. Wenn zu Ihren Anwendern auch Mitarbeiter aus Vertrieb und Marketing gehören, ist diese Funktion einen Versuch wert, denn sie ermöglicht die einfache Zusammenfassung und Analyse von Daten direkt aus dem 4D View Pro Menüband.

CSV: Neues Import-/Exportformat

Mit 4D v20 können Sie CSV-Dateien importieren und exportieren. CSV ist ein gängiges Datenaustauschformat, das von vielen Anwendungen unterstützt wird. Sie können z.B. die Daten einer CSV-Datei, die aus einem anderen Informationssystem stammt, mit Hilfe des VP Import- und des VP Export-Dokuments anzeigen . Diese Befehle unterstützen begrenzte Textdateiformate wie CSV.

Blattverwaltung

Mit 4D v20 können Sie die Blätter in Ihren 4D View Pro Dokumenten programmgesteuert verwalten. Mit den folgenden Befehlen können Sie ein Blatt erstellen, umbenennen, ausblenden oder entfernen oder einfach prüfen, auf welchem Blatt sich der Benutzer gerade befindet:

  • VP SET SHEET COUNT: legt die Anzahl der Blätter fest, die Sie benötigen
  • VP ADD SHEET: ein Blatt (mit einem benutzerdefinierten Namen) an einem bestimmten Index einfügen
  • VP SET SHEET NAME: leiten Sie Ihre Benutzer an, indem Sie Ihren Blättern entsprechende Namen geben
  • VP SET CURRENT SHEET: Ändern Sie das ausgewählte Blatt
  • VP SET SHEET OPTIONS: Blenden Sie Blätter aus, zum Beispiel solche, die nur Informationen für die Berechnung enthalten

Seitenumbrüche AUS DER UI verwalten

Mit 4D v20 ist es jetzt möglich, Seitenumbrüche über die Benutzeroberfläche zu verwalten, dank neuer Einträge im Kontextmenü:„Seitenumbruch hinzufügen“ und„Seitenumbruch entfernen„. Sie können die Druckzeilen auch mit den neuen Befehlen VP SET SHOW PRINT LINES und VP Get show print lines ein- oder ausblenden.

Arbeitsmappen-Optionen

Wenn Sie ein Dokument mit 4D View Pro erstellen, ist es oft notwendig, die Benutzerfreundlichkeit zu verbessern, indem Sie die Blattregisterkarten oder die Bildlaufleisten ausblenden, das Kontextmenü deaktivieren oder die Drag-and-Drop-Funktion deaktivieren… All diese Funktionen und mehr sind mit dem Befehl VP SET WORKBOOK OPTIONS möglich.

Beschleunigen Sie Ihren Entwicklungsprozess mit Vorlagen

Die Erstellung von Berichten oder Tabellenkalkulationen aus vorhandenen Vorlagen beschleunigt die Entwicklung. Wie ein Endbenutzer, der die Aktion Kopieren und Einfügen verwendet, können Sie als Entwickler mit 4D v20 einfach einen Bereich von Zellen von einem anderen Ort oder sogar einem anderen Bereich „kopieren“. Mit dem Befehl VP MOVE CELLS können Sie einen Zellbereich an einer anderen Stelle kopieren/ausschneiden und einfügen, auch zwischen zwei Bereichen. Eine andere Möglichkeit, einen Bereich zu kopieren, besteht darin, ihn mit dem Befehl VP Copy to object in ein Objekt zu kopieren, um ihn z. B. in Ihrer Datenbank zu speichern, so dass Sie dieses Objekt bei Bedarf mit dem Befehl VP PASTE FROM OBJECT einfügen können.

Druckschnittstelle

Um Ihren Kunden das Einrichten des Drucks zu erleichtern, wurde die Multifunktionsleiste um eine neue Funktion erweitert: Sie unterstützt die Druckeinstellungen mit einer Registerkarte „Seitenlayout“ und einem Dialogfeld „Seite einrichten“. Dieser Dialog enthält Registerkarten für Seite, Ränder, Kopf-/Fußzeile und Blatt, mit denen der Benutzer viele Optionen mit dem Befehl VP SET PRINT INFO verwalten kann.

Befüllen Sie Ihre Blätter mit einem Datenkontext

4D View Pro bietet Ihnen eine neue Möglichkeit, Ihre Daten zu laden und Ihre Vorlagen zu erstellen: den Datenkontext. Er ermöglicht es Ihnen, Ihr Dokument mit Platzhaltern zu erstellen und diese zu füllen, indem Sie diesen Datenkontext einstellen

Zeigen Sie Ihre Sammlungen als Tabellen an

Mit 4D View Pro können Sie bereits auf einfache Weise Daten in Tabellen laden und anzeigen. 4D v20 bietet eine neue Tabellenfunktion, mit der Sie viel mehr tun können und von zusätzlichen Eigenschaften wie Kopfzeilen, Größenänderung der Tabelle, Zusammenfassungszeile, Spaltensortierung, Filter und mehr profitieren. Mit dieser Funktion können Sie auch schnell Daten aus Datenklassen und Sammlungen laden. Begrüßen Sie den neuen VP-Befehl CREATE TABLE.

Verwalten von Zeilen und Spalten

4D v20 bringt mehrere neue Befehle, mit denen Sie Ihre Tabellenspalten und -zeilen effizienter verwalten können – durch Hinzufügen oder Entfernen von Spalten/Zeilen je nach den Bedürfnissen der Endanwender.

Durch die Kombination dieser neuen Funktion mit Datenkontexten können Sie fortschrittlichere Vorlagen entwerfen, um Geschäftsinhalte automatisch mit den richtigen Informationen für jede Situation zu füllen – seien es Berichte, Rechnungen, Verträge oder jeder andere Dokumententyp.

Anpassung des Tabellenstils

Tabellen sind ein wesentlicher Bestandteil von 4D View Pro Dokumenten. Aus diesem Grund haben wir in den verschiedenen Versionen viele Fortschritte in Bezug auf Tabellen gemacht. 4D v20 fügt eine neue Funktion hinzu, mit der Sie die Tabellen so gestalten können, dass sie perfekt zum Rest Ihres Dokuments passen.

Von nun an bietet VP Set table theme die Möglichkeit, einen der über 60 vordefinierten Tabellenstile durch Programmierung anzuwenden. Wenn keiner dieser Stile Ihren Anforderungen entspricht, können Sie Ihr eigenes Thema definieren und es auf Ihre Tabelle anwenden.

R-Releases im Detail