Tipps

Tech-Tipps – Die 4 Tipps vom April sind da!

von Add Komoncharoensiri, Leiter der technischen Dienste bei 4D Inc.

Als 4D Entwickler müssen Sie mit den neuen Entwicklungen Schritt halten, die 4D kontinuierlich herausbringt. Neben den Tipps und Tricks, die das Produktteam zur Verfügung stellt, sind die Tech Tips eine weitere Referenz, um einige der 4D Konzepte zu lernen.

Dieser Artikel behandelt 4 Tipps:

  • Behandlung von SQL-Platzhaltern als literale Zeichenfolge
  • Programmatische Ermittlung des Projektnamens
  • Präemptive Methoden in derselben Aufrufkette sollten ebenfalls präemptiv sein
  • Erstellen eines neuen View Pro-Dokuments basierend auf einem Sheet
Produkt blank

ORDA – Gemeinsame Nutzung einer Entitätsauswahl durch Prozesse

4D v16 R6 hat ein neues Konzept für die Kommunikation zwischen Prozessen eingeführt: Shared Object und Shared Collection Variablen! Damit können Sie auf einfache Weise Informationen zwischen Prozessen austauschen.

Bis jetzt war es nicht möglich, Objektauswahlen zwischen Prozessen zu teilen. Das hat sich jedoch geändert … wir freuen uns, Ihnen mitteilen zu können, dass in 4D v18 R5 die Auswahl von Objekten gemeinsam genutzt werden kann!

Vorbei sind die Zeiten, in denen Sie eine Liste von Primärschlüsseln erstellen mussten, um eine Auswahl von Entitäten in einen anderen Prozess zu verschieben. Verbessern Sie Ihren Multiprozess-Code , indem Sie ORDA-Entity-Selektionen als gemeinsam genutzte Objekte einbinden.

Lesen Sie weiter, um mehr zu erfahren.

Produkt blank

Objects Corner: Einfaches Teilen und andere gute Nachrichten

Wie oft haben Sie die Fehlermeldung„Not supported value type in a shared object“ erhalten, wenn Sie versucht haben, ein Objekt in ein gemeinsames Objekt zu setzen?

Was haben Sie dann getan? Haben Sie einen längeren Code geschrieben, um Ihr unschuldiges Objekt in ein gemeinsam genutztes Objekt zu verwandeln, vielleicht durch Iteration über alle Eigenschaften des Objekts?

Wie wäre es, ein gemeinsames Objekt von einer gemeinsamen Gruppe in eine andere zu übertragen?

Eine interessante Sache über Objekte: Sie wissen bereits, dass sie als Hash-Map (ein Schlüssel/Wert-System) verwendet werden können, aber wie wäre es, alle Schlüssel oder alle Werte mit einer einzigen Codezeile zu erhalten?

Lesen Sie weiter, denn 4D v18 R3 ist da und bringt gute Nachrichten!

Produkt blank

Koexistenz von thread-sicheren und nicht-thread-sicheren Befehlen

Haben Sie schon einmal Methoden verwendet, die sowohl thread-sichere als auch nicht thread-sichere Aufrufe haben, mit Bedingungen, die Befehle überspringen, die nicht thread-sicher sind? Derzeit verhindert der Compiler dies und es wird ein Fehler ausgegeben. Es gibt jedoch eine Option, mit der Sie diese Prüfung deaktivieren können, und dieser Blogbeitrag zeigt Ihnen, wie das geht.

Produkt blank

Einfaches Synchronisieren Ihrer Prozesse

Automatisch übersetzt von Deepl

Präemptive Prozesse sind sehr nützlich für die parallele Durchführung umfangreicher Berechnungen, bei denen alle Kerne Ihrer CPU genutzt werden, aber manchmal müssen Sie Aufgaben an einen kooperativen Prozess delegieren(z. B. mit einem nicht präemptiven Befehl). Mit dem New signal Befehl können Sie einen Prozess anhalten und auf die Antwort eines anderen Prozesses warten!

Produkt blank

Mehr Thread-sichere Befehle zu Ihrer Verfügung

Automatisch übersetzt von Deepl

Mit 4D können Sie die Vorteile von Multicore-Computern mit präemptiven Prozessen voll ausschöpfen. In einem früheren Blog-Beitrag haben wir Ihnen eine Liste erweiterter Befehle zur Verfügung gestellt, die in präemptiven Prozessen verwendet werden können, was eine schnellere globale Ausführungszeit und mehr verbundene Benutzer ermöglicht. Und als Reaktion auf Ihr Feedback haben wir die Liste um weitere Befehle erweitert.