Programmgesteuerter Zugriff auf Elemente in 4D Write Pro

Automatisch übersetzt von Deepl

4D Write Pro bietet mehr und mehr Programmiermöglichkeiten! Angenommen, Sie möchten den Stil einer Tabelle, eines Absatzes oder eines Bildes in einem bestehenden 4D Write Pro Dokument programmatisch ändern. Mit 4D v17 ist das möglich! Jetzt können Sie auf jedes Element oder jeden Teil eines Dokuments zugreifen, indem Sie es programmieren. Diese Teile, Elemente genannt, werden entweder als Sammlung mit Hilfe der WP Get elements Funktion, oder als einzelnes Element mit der WP Get element by ID Funktion.

Sammlung von Elementen

Der Befehl WP Get elements gibt eine Sammlung von Elementen beliebigen Typs zurück (Absätze, Tabellen, Bilder, etc.). Wenn ein typisierter Bereich oder eine Referenz übergeben wird, gibt der Befehl eine Sammlung zurück, die nur Elemente des entsprechenden Typs enthält (es sei denn, dies ist im zweiten Parameter angegeben). Andernfalls gibt der Befehl eine Sammlung zurück, die alle verfügbaren Elemente enthält, unabhängig von ihrem Typ.

Zum Beispiel:

  • Wenn der erste Parameter ein Bereich eines bestimmten Typs ist (z. B. ein Absatzbereich), dann sind die zurückgegebenen Elemente auch Absätze.
  • Wenn der erste Parameter nicht spezifisch ist (ein vollständiges Dokument oder ein heterogener Bereich), können die zurückgegebenen Elemente mit einem letzten Parameter (optional) gefiltert werden.

// Returns all elements of the document
$allElements
:=WP Get elements(wpDoc)

// Returns all table elements of the document
$allTables :=WP Get elements(wpDoc;wk type table)

// Returns all paragraphs of the range
$paragraphCol :=WP Get elements($paragraphRange)

// Returns all paragraphs of the table range
$paragraphCol:=WP Get elements($tableRange;wk type paragraph)

// Returns all the tables of the given range
$someTableCol:=WP Get elements($customRange;wk type table)

Sobald die Sammlung erstellt ist, kann sie geparst werden. Jedes Element ist ein Objekt, das als Parameter für den Befehl verwendet werden kann, WP SET ATTRIBUTES.

Einzelnes Element

Der Befehl WP Get element by ID Befehl ermöglicht den Zugriff auf ein einzelnes Element. In 4D Write Pro Dokumenten haben einige Elemente Standard-IDs (wie Bilder und Tabellen). Wenn sie vorhanden sind, können diese IDs geändert werden, und wenn sie nicht vorhanden sind, können sie erstellt werden. Mit diesem Wissen ist das Verhalten des Befehls recht einfach zu verstehen: Er gibt ein einzelnes Element für eine bestimmte ID zurück!

Sobald Sie das Element erhalten haben, können Sie es wie unten gezeigt bearbeiten:

$element:=WP Get element by ID(myDoc; "Tabelle1")
WP SET ATTRIBUTES ($element;wk border style;wk solid)
WP SET ATTRIBUTES ($element;wk border width; "4px")
WP SET ATTRIBUTES ($element;wk border color; "blau")

Roland Lannuzel
- Product Owner & 4D Experte - Nach seinem Studium der Elektronik arbeitete Roland als Entwickler und Berater in der industriellen IT-Branche, wo er Lösungen für Kunden mit einer Vielzahl von Datenbanken und Technologien entwickelte. In den späten 80er Jahren verliebte er sich in 4D und setzte es bei der Entwicklung von Geschäftsanwendungen wie Buchhaltungs-, Abrechnungs- und E-Mail-Systemen ein. 1997 trat er schließlich in das Unternehmen ein und leistete einen wertvollen Beitrag, indem er Spezifikationen, Testtools und Demos entwarf, Schulungen durchführte und auf vielen Konferenzen für die 4D Community sprach. Er gestaltet die Zukunft von 4D aktiv mit, indem er neue Funktionen und Datenbankentwicklungstools definiert.