Daten mit Blick auf die Leistungsoptimierung strukturieren

Datenbindungsoptionen mit Blick auf Leistungsoptimierung

Bei Formularen, die an Datenquellen gebunden sind, können Sie ein Datenelement mit einem Formularobjekt verknüpfen, etwa einem Feld oder Teilformular. Diese Verknüpfung wird als Datenbindung bezeichnet. Sie können Objekte wählen, die je nach Menge der angezeigten Daten schrumpfen bzw. wachsen.

Sie können bei der Formularwiedergabe mit vielen unterschiedlichen Datenbindungsdefinitionen dieselben Ergebnisse erzielen. Die Verarbeitung der Datenbindung in Forms wird jedoch effizienter, wenn die Beziehung zwischen dem Formularobjekt und dem zugehörigen Datenelement möglichst klar und offensichtlich ist.

Im folgenden Diagramm sehen Sie ein Beispiel für eine Feldbindung, bei dem zwei Feldobjekte im Formular an Datenelemente gebunden sind. Die Bindung ist nicht eindeutig, weil mehrere Exemplare der Feldobjekte und der zugehörigen Daten vorhanden sind. Beim Wiedergeben (Rendern) des Formulars ist mehr Verarbeitungsleistung erforderlich, um das n-te Vorkommen jedes Objekts mit dem n-ten Vorkommen der entsprechenden Daten abzugleichen.

Grafik in Originalgröße anzeigen
Feldbindungen (Nummer und Menge)

Das folgende Diagramm zeigt den Einsatz einer Teilformularbindung zur Objektgruppierung. Die Verarbeitung bei der Formularwiedergabe soll dadurch vereinfacht werden. Das Teilformular ist an die sich wiederholende Gruppe in den Daten gebunden, wodurch die mehrdeutige Bindung eliminiert wird. Die Bindung wird für die erste Gruppe ausgewertet; bei den dann folgenden Wiederholungen ist keine erneute Auswertung erforderlich.

Grafik in Originalgröße anzeigen
A.
Feldbindungen (Nummer und Menge)

B.
Teilformularbindung

Sie können Teilformulare einsetzen, um Objekte zu gruppieren und zu strukturieren, ohne das Teilformular an ein Datenelement zu binden. Ändern Sie den Datenbindungstyp des Teilformulars vom Standardwert „Normal“ in „Ohne“, damit beim Zusammenführen von Daten nicht durch Forms nach einem Datenelement für das Teilformular gesucht wird.

Analysieren der Datenstruktur mit Blick auf die Leistungsoptimierung

Am Beispiel des selektiven Anzeigens eines Feldes lässt sich zeigen, wie die Datenstruktur die Leistung beeinflusst.

Angenommen, eine Meldung soll nur dann angezeigt werden, wenn der Wert des Datenelements „amountOwed“ (zu zahlender Betrag) größer als null ist. Eine Möglichkeit ist der Einsatz eines Skripts, um den Wert von „amountOwed“ zu untersuchen und je nach Wert des Datenelements die Anzeigeeigenschaft des Meldungsfelds zu ändern.

Die Daten können auch an ein Teilformular gebunden werden. Das Binden von Daten an ein Teilformular ist effizienter als das Binden von Daten an ein Feld, beide Methoden führen jedoch zum selben Ergebnis. Im Beispiel fügen wir das Statuselement in die Datenstruktur ein und binden dieses Element an ein Teilformular. Das Teilformular enthält das Feld mit der Meldung und das Feld amountOwed. Ist der Zähler-Mindestwert für den Teilformularsatz auf null eingestellt, wird die Meldung nur angezeigt, wenn das Status-Element vorhanden ist.

Im Datenkontext sollte die Entscheidung über das Einfügen der Status-Node in die Datendatei zum Zeitpunkt der Generierung getroffen werden, wenn der Wert größer als 0 ist. Dieses Verfahren verschiebt im Datenkontextentwurf die Logik zum Feststellen, ob ein Teilformular erforderlich ist.