QODLY STUDIO FÜR 4D: WAS IST NEU IN 4D 20 R7

Automatisch übersetzt von Deepl

Wir sind sicher, dass Sie sich über die neuen Funktionen von Qodly Studio for 4D in 4D 20 R7 freuen werden.

Entdecken Sie diese leistungsstarke Plattform – eine robuste und benutzerfreundliche Lösung für die Erstellung von Business-Webanwendungen mit minimalem Programmieraufwand.

Qodly Studio for 4D ist in 4D integriert und ermöglicht es Ihnen, bestehende Geschäftslogik, die für Desktop-Anwendungen entwickelt wurde, zu nutzen.

Lassen Sie uns in die Details eintauchen und sehen Sie, wie Ihre Anwendung mehr als nur Daten liefern kann und gleichzeitig eine dynamische Benutzeroberfläche und einen starken Datenschutz durch die Einrichtung von Privilegienbietet .

MEHR ALS DATEN MIT DER NEUEN 4D.IncomingMessage Klasse liefern

Mit Ihrer Qodly-App können Sie jetzt ganz einfach Dateidownloads für Ihre Endbenutzer ermöglichen.

Verwenden Sie die neue 4D.OutgoingMessage Klasse, die Ihre App über einen ORDA Funktionsaufruf oder einen Singleton Funktionsaufruf abrufen kann.

Dies führt zur Rückgabe von Webinhalten mit Body, HTTP-Headern und Statuscodes, die vom Browser verarbeitet werden können.

Implementieren Sie einfach eine Funktion, die eine Instanz der neuen 4D.OutgoingMessage Klasse zurückgibt, richten Sie den Funktionsaufruf ein, und der Webbrowser verarbeitet die 4D.OutgoingMessage Klasse automatisch. Es sind keine zusätzlichen Schritte erforderlich!

Lesen Sie diesen Blogbeitrag, um mehr zu erfahren.

Beispiel

Im folgenden Beispiel erhält die Funktion getThumbnail() der Datenklasse Products als Parameter einen Produktnamen, eine Breite und eine Höhe. Sie gibt an den Browser eine Instanz der neuen 4D.OutgoingMessage Klasse zurück, deren Body eine Miniaturansicht des Produktbildes in der gewünschten Größe enthält.

Beachten Sie die Verwendung des new onHTTPGet Schlüsselworts. Wenn dieses Schlüsselwort auf eine Funktion angewendet wird, ist diese Funktion mit einem GET-Verb aufrufbar! Das Herunterladen einer Datei kann durch einfaches Anklicken eines Links erfolgen.

Class extends DataClass


exposed onHTTPGet Function getThumbnail($name : Text; $width : Integer; $height : Integer) : 4D.OutgoingMessage

var $file:=File("/RESOURCES/Images/"+$name+".jpg")
var $image; $thumbnail : Picture
var $response:=4D.OutgoingMessage.new()

READ PICTURE FILE($file.platformPath; $image)
CREATE THUMBNAIL($image; $thumbnail; $width; $height; Scaled to fit)
$response.setBody($thumbnail)
$response.setHeader("Content-Type"; "image/jpeg")

return $response

Es ist so einfach, diesen Funktionsaufruf in Qodly einzurichten!

Und hier ist das Ergebnis in Aktion!

blank

neues Ereignis OnPrivilegeChange

Wenn Sie Berechtigungen zum Schutz Ihrer Daten eingerichtet haben, wird der Zugriff auf Daten nicht gewährt, wenn die entsprechenden Berechtigungen nicht in der Sitzung vorhanden sind.

Dies kann zu ärgerlichen Szenarien wie diesem führen:

  • Der Benutzer ist nicht authentifiziert, und die Sitzung enthält keine Berechtigungen, so dass das Laden einer Qodly-Quelle (die sich auf durch Berechtigungen geschützte Daten bezieht) beim Anwendungsstart fehlschlägt, weil die entsprechenden Berechtigungen fehlen
  • Der Benutzer hat sich authentifiziert, die entsprechenden Berechtigungen sind nun in der Sitzung, aber … die Anwendung wird nicht darüber informiert, um die Qodly-Quelle zu laden

Dank des neuen Ereignisses OnPrivilegeChange, das auf der Seite verfügbar ist, können Sie eine Aktion (Standardaktion, Navigation oder Funktionsaufruf) auslösen, wenn sich die Berechtigungen in der Sitzung auf dem Server geändert haben.

Beispiel

Im folgenden Beispiel hat die HealthCare-Anwendung eine Kopfzeile, die Statistiken anzeigt (Anzahl der Ärzte, Anzahl der Patienten, …). In dieser Kopfzeile wird auch der Top-Arzt angezeigt (der Arzt mit den meisten Terminen). Es handelt sich um eine gemeinsame Qodly-Quelle(mostBusyDoctor), die beim Start der Anwendung geladen wird.

Solange der Benutzer nicht authentifiziert ist, ist diese Information nicht verfügbar, da kein Zugriff auf die Ärzte gewährt wird. Sobald die Authentifizierung erfolgt ist, kann diese Datenquelle dank des neuen Ereignisses OnPrivilegeChange, das auf der Seite Header eingerichtet wurde, geladen werden.

blank

Und hier ist das Ergebnis in Aktion; sehen Sie sich die Kopfzeile an!

blank

Rollen und Privilegien – Anzeigen/Ausblenden der geerbten Privilegien

Wenn Sie die Schnittstelle Rollen und Zugriffsrechte bereits verwendet und einige verschachtelte Zugriffsrechte eingerichtet haben, wissen Sie, dass es eine gute Sache ist, zu sehen, welche Zugriffsrechte von anderen geerbt werden.

Aber manchmal müssen Sie sich auf eine übersichtlichere Ansicht konzentrieren, die nur die Rechte enthält , die Sie explizit für ein Privileg eingerichtet haben.

Das ist jetzt möglich. Aktivieren Sie dazu einfach eine Umschaltfunktion!

blank

Warten Sie nicht länger und probieren Sie die neuen Funktionen von Qodly studio for 4D aus, um Ihre Webanwendung benutzerfreundlich und leistungsstark zu gestalten!

Avatar
- Product Owner - Marie-Sophie Landrieu-Yvert ist seit 2017 als Product Owner im 4D Produktteam tätig. Als Product Owner ist sie für das Schreiben der User Stories und deren Umsetzung in funktionale Spezifikationen zuständig. Ihre Aufgabe ist es auch, sicherzustellen, dass die Implementierung der Funktionen den Anforderungen des Kunden entspricht. Marie-Sophie ist Absolventin der ESIGELEC Ingenieurschule und begann ihre Karriere als Ingenieurin bei IBM im Jahr 1995. Sie nahm an verschiedenen Projekten teil (Wartungs- oder Build-Projekte) und arbeitete als Cobol-Entwicklerin. Dann arbeitete sie als UML-Designerin und Java-Entwicklerin. In letzter Zeit bestand ihre Hauptaufgabe darin, funktionale Anforderungen zu analysieren und zu schreiben sowie Geschäfts- und Entwicklungsteams zu koordinieren.