[AEM Forms]{class="badge positive" title="Gilt für AEM Forms)."}

Arbeiten mit einem Formulardatenmodell (FDM) work-with-form-data-model

Version
Artikel-Link
AEM 6.5
Hier klicken
AEM as a Cloud Service
Dieser Artikel

Der Formulardatenmodell (FDM)-Editor bietet eine intuitive Benutzeroberfläche und integrierte Tools zum Erstellen, Bearbeiten und Konfigurieren eines Formulardatenmodells (FDM) in Adobe Experience Manager (AEM) Forms. Mithilfe des Editors können Sie Datenmodellobjekte, Eigenschaften und Services aus verknüpften Datenquellen direkt im Formulardatenmodell (FDM) hinzufügen und konfigurieren.

Funktionen des Formulardatenmodell-Editors

data-integration

Der Formulardatenmodelleditor unterstützt die folgenden zentralen Aufgaben:

  • Hinzufügen und Konfigurieren von Datenmodellobjekten, Eigenschaften und aus verknüpften Datenquellen in FDM.
  • Erstellen von Datenmodellobjekten und -eigenschaften ohne Datenquellen. Sie können diese Objekte zuerst definieren und später mit den entsprechenden Datenmodellobjekten und -eigenschaften verbinden, wodurch Design von der Quellkonfiguration entkoppelt wird.
  • Generieren und Bearbeiten von Beispieldaten für Datenmodellobjekteigenschaften. Diese Beispieldaten füllen adaptive Forms während der Vorschau vor, sodass Autoren und Tester das Formularverhalten vor der Bereitstellung mit realistischen Werten validieren.
  • Testen von Datenmodellobjekten und Services die in FDM konfiguriert werden, um zu bestätigen, dass sie ordnungsgemäß in die zugrunde liegenden Datenquellen integriert sind.

Voraussetzungen

Wenn Sie mit der Forms-Datenintegration noch nicht vertraut sind und keine Datenquelle konfiguriert oder kein Formulardatenmodell (FDM) erstellt haben, sehen Sie sich die folgenden Themen an:

Im Folgenden finden Sie Einzelheiten zu den verschiedenen Aufgaben und Konfigurationen, die Sie mit dem Formulardatenmodell-Editor durchführen können.

NOTE
Sie müssen Mitglied der beiden Gruppen fdm-author und forms-user sein, um ein Formulardatenmodell (FDM) erstellen und verwenden zu können. Wenden Sie sich an Ihren Experience Manager, um Mitglied dieser Gruppen zu werden.

Hinzufügen von Datenmodellobjekten und Services add-data-model-objects-and-services

Wenn Sie ein Formulardatenmodell (FDM) mit Datenquellen erstellt haben, können Sie mit dem Formulardatenmodelleditor Datenmodellobjekte und Services hinzufügen, deren Eigenschaften konfigurieren, Verknüpfungen zwischen Datenmodellobjekten erstellen und das Formulardatenmodell (FDM) und die Services testen. Auf diese Weise können Sie ein vollständiges, funktionales Datenmodell direkt aus Ihren verbundenen Datenquellen in einer einzigen Bearbeitungsumgebung zusammenstellen.

Sie können Datenmodellobjekte und Services aus verfügbaren Datenquellen zum Formulardatenmodell (FDM) hinzufügen. Hinzuzufügende Datenmodellobjekte werden auf der Registerkarte Modell angezeigt, hinzugefügte Services auf der Registerkarte Services. Die beiden Objekttypen sind dabei klar voneinander getrennt, was die Konfiguration und das Testen erleichtert.

Hinzufügen von Datenmodellobjekten und Services:

  1. Melden Sie sich bei der Experience Manager-Autorinstanz an, navigieren Sie zu Forms > Datenintegrationen und öffnen Sie das Formulardatenmodell (FDM), zu dem Sie Datenmodellobjekte hinzufügen möchten.

  2. Erweitern Sie im Bereich „Datenquellen“ die Datenquellen, um verfügbare Datenmodellobjekte und Dienste anzuzeigen.

  3. Wählen Sie Datenmodellobjekte und Services aus, die Sie zum Formulardatenmodell (FDM) hinzufügen möchten, und wählen Sie Ausgewählte hinzufügen. Dadurch werden die ausgewählten Objekte und Services zum FDM hinzugefügt, sodass Sie deren Eigenschaften konfigurieren und Verknüpfungen zwischen ihnen erstellen können.

    selected-objects

    Ausgewählte Datenmodellobjekte und Services

    Auf Registerkarte Modell) wird eine grafische Darstellung aller Datenmodellobjekte und ihrer Eigenschaften angezeigt, die zum Formulardatenmodell (FDM) hinzugefügt wurden. Jedes Datenmodellobjekt wird durch ein Feld im Formulardatenmodell (FDM) dargestellt, wodurch die Struktur Ihres Modells visuell einfach zu scannen ist.

    model-tab

    Registerkarte Modell mit hinzugefügten Datenmodellobjekten

    note
    NOTE
    Sie können die Datenmodellobjektfelder durch Ziehen im Inhaltsbereich anordnen. Alle im Formulardatenmodell (FDM) hinzugefügten Datenmodellobjekte sind im Bereich „Datenquellen“ ausgegraut, wodurch angezeigt wird, dass sie bereits hinzugefügt wurden, und doppelte Einträge vermieden werden.

    Auf der Registerkarte Services wird eine Liste der hinzugefügten Services angezeigt.

    services-tab

    Registerkarte Services mit Datenmodell-Services

    note
    NOTE
    Neben Datenmodellobjekten und Diensten enthält das OData-Metadatendokument (Open Data Protocol) des Service Navigationseigenschaften, die die Verknüpfung zwischen zwei Datenmodellobjekten definieren und das Durchlaufen zugehöriger Daten ermöglichen. Weitere Informationen finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Services.
  4. Wählen Sie Speichern aus, um das Formularmodellobjekt zu speichern.

    note
    NOTE
    Die Services, die Sie auf der Registerkarte „Services“ eines Formulardatenmodells (FDM) konfigurieren, können direkt mithilfe von Regeln für adaptive Formulare aufgerufen werden, sodass Formularautoren Datenoperationen wie das Abrufen oder Schreiben von Daten zur Laufzeit als Trigger verwenden können. Die konfigurierten Services sind in der Aktion zum Aufrufen von Services im Regeleditor verfügbar. Weitere Informationen zur Verwendung dieser Dienste in Regeln für adaptive Formulare finden Sie unter „Aufrufen von Diensten und Festlegen von Werten für Regeln“ Regeleditor.

Erstellen von Datenmodellobjekten und untergeordneten Eigenschaften create-data-model-objects-and-child-properties

Ein Datenmodell organisiert Informationen in strukturierten, wiederverwendbaren Einheiten, die als Objekte bezeichnet werden und jeweils untergeordnete Eigenschaften enthalten können, die die einzelnen Attribute des Objekts beschreiben. Das Erstellen klar definierter Objekte und das Verschachteln von untergeordneten Eigenschaften darunter ist ein grundlegender Schritt beim Erstellen eines jeden Datenmodells, da es eine klare, hierarchische Darstellung der Informationen bereitstellt, die Ihre Anwendung speichert, validiert und austauscht.

Was sind Datenmodellobjekte und untergeordnete Eigenschaften?

  • Ein Datenmodellobjekt“ ist benannte Container, der verwandte Felder in einer einzigen logischen Entität gruppiert. Objekte stellen reale oder konzeptionelle Elemente dar - z. B. einen Kunden, eine Bestellung oder ein Produkt - und dienen als oberste Struktur, an die andere Elemente anhängen.
  • Untergeordnete Eigenschaften sind die einzelnen Felder, die in einem Objekt verschachtelt sind. Jede untergeordnete Eigenschaft definiert ein Attribut des übergeordneten Objekts zusammen mit Merkmalen wie Name, Datentyp und Angabe, ob der Wert erforderlich ist. Durch Verschachteln von Eigenschaften unterhalb eines übergeordneten Objekts werden verknüpfte Daten gruppiert, was die Klarheit verbessert und die Pflege des Modells erleichtert.

Diese hierarchische Beziehung zwischen über- und untergeordneten Elementen verleiht einem Datenmodell seine Hierarchie. Das -Objekt fungiert als übergeordnetes Element, und die untergeordneten Eigenschaften erben ihren Kontext davon, sodass jedes Attribut eindeutig mit der Entität verknüpft ist, die es beschreibt.

Erstellen eines Datenmodellobjekts

Führen Sie die folgenden Schritte aus, um ein neues Objekt in Ihrem Datenmodell zu definieren:

  1. Benennen Sie das Objekt. Wählen Sie einen klaren, beschreibenden Namen, der die Entität identifiziert, die das Objekt darstellt. Eine konsistente Benennung erleichtert das Lesen und Nachschlagen des Modells.
  2. Objekt als Container definieren. Legen Sie das -Objekt als Element der obersten Ebene fest, das die zugehörigen untergeordneten Eigenschaften enthält.
  3. Untergeordnete Eigenschaften hinzufügen. Fügen Sie die einzelnen Felder an, die die Attribute des -Objekts beschreiben, und definieren Sie jedes dieser Felder nacheinander.
  4. Weisen Sie jeder Eigenschaft einen Datentyp zu. Geben Sie den Typ des Werts an, den jede untergeordnete Eigenschaft akzeptiert, z. B. Text, Zahl oder Boolesch, damit die Daten korrekt validiert werden können.
  5. Festlegen von Anforderungsregeln. Geben Sie an, welche untergeordneten Eigenschaften erforderlich und welche optional sind, um sicherzustellen, dass das Modell die Einschränkungen durchsetzt, von denen Ihre Anwendung abhängig ist.

Hinzufügen untergeordneter Eigenschaften

Definieren Sie beim Hinzufügen untergeordneter Eigenschaften zu einem Objekt jede Eigenschaft mit den folgenden Details:

  • Eigenschaftsname - Eine eindeutige, beschreibende Beschriftung für das Attribut im übergeordneten Objekt.
  • Datentyp - Die Art des Werts, den die Eigenschaft speichert und der steuert, wie der Wert validiert und verarbeitet wird.
  • Erforderlicher oder optionaler Status - ob die Eigenschaft immer einen Wert enthalten muss.
  • Verschachtelte Struktur (falls zutreffend) - Eine untergeordnete Eigenschaft kann selbst ein Objekt mit eigenen untergeordneten Eigenschaften sein, sodass Sie komplexe Daten mit mehreren Ebenen modellieren können. Durch diese Verschachtelung können Datenmodelle tief strukturierte Informationen darstellen.

Praktische Anwendungen und Vorteile

Die Strukturierung eines Datenmodells mit Objekten und untergeordneten Eigenschaften bietet mehrere praktische Vorteile:

  • Konsistenz - Durch die Gruppierung verwandter Felder in einem gemeinsamen Objekt wird sichergestellt, dass Daten programmübergreifend einheitlich gespeichert und interpretiert werden.
  • Wiederverwendbarkeit - klar definierte Objekte können an mehreren Stellen referenziert werden, wodurch Duplizierungen reduziert werden.
  • Validierung - Durch die Zuweisung von Datentypen und Anforderungsregeln zu untergeordneten Eigenschaften kann das System automatisch ungültige oder unvollständige Daten erfassen.
  • Skalierbarkeit - Da Objekte verschachtelte untergeordnete Eigenschaften unterstützen, kann das Modell wachsen, um zunehmend komplexe Beziehungen darzustellen, ohne unorganisiert zu werden.

Best Practices

  • Verwenden Sie klare, beschreibende Namen für Objekte und deren untergeordnete Eigenschaften, damit das Modell selbst dokumentiert wird.
  • Gruppieren Sie verwandte Attribute unter demselben übergeordneten Objekt, anstatt sie über nicht verwandte Strukturen zu verteilen.
  • Definieren Sie Datentypen und Anforderungsregeln frühzeitig, da dadurch eine zuverlässige Validierung von Anfang an gewährleistet ist.
  • Verschachtelung zweckdienlich beibehalten : Verschachtelte untergeordnete Eigenschaften werden nur dann geschachtelt, wenn die zusätzliche Hierarchie die Struktur der Daten sinnvoll widerspiegelt.

Indem Sie Objekte und ihre untergeordneten Eigenschaften sorgfältig definieren, erstellen Sie ein Datenmodell, das organisiert und verwaltbar ist und die Entitäten, mit denen Ihre Anwendung arbeitet, genau darstellen kann.

Erstellen von Datenmodellobjekten create-data-model-objects

Sie können Datenmodellobjekte aus konfigurierten Datenquellen hinzufügen, aber auch Datenmodellobjekte (auch Entitäten genannt) ohne Datenquellen erstellen. Ein Datenmodellobjekt ist eine strukturierte Entität innerhalb des Formulardatenmodells (FDM), die eine logische Gruppierung von Eigenschaften darstellt, die später an Datenquellenfelder gebunden oder unabhängig verwendet werden können. Diese Funktion ist besonders dann nützlich, wenn Sie noch keine Datenquellen im Formulardatenmodell (FDM) konfiguriert haben, da Sie damit beginnen können, Ihre Datenstruktur zu entwerfen, bevor eine Backend-Integration vorhanden ist.

Schritte zum Erstellen eines Datenmodellobjekts ohne Datenquellen

So erstellen Sie ein Datenmodellobjekt ohne Datenquellen:

  1. Melden Sie sich bei der Experience Manager-Autorinstanz an, navigieren Sie zu Forms > Datenintegrationen und öffnen Sie das Formulardatenmodell (FDM), in dem Sie ein Datenmodellobjekt oder eine Entität erstellen möchten.

  2. Wählen Sie Entität erstellen.

  3. Geben Sie im Dialog Datenmodell erstellen einen Namen für das Datenmodellobjekt ein und wählen Sie Hinzufügen. Ein Datenmodellobjekt wird zum Formulardatenmodell (FDM) hinzugefügt. Das neu hinzugefügte Datenmodellobjekt ist nicht an eine Datenquelle gebunden und weist keine Eigenschaften auf, wie in der folgenden Abbildung dargestellt. Da es ungebunden ist, ist dieses Objekt nur als struktureller Platzhalter vorhanden, bis Sie seine Eigenschaften definieren oder es mit einer Datenquelle verbinden.

    new-entity

Nächste Schritte next-steps-data-model-object

Nachdem das ungebundene Datenmodellobjekt erstellt wurde, fügen Sie untergeordnete Eigenschaften hinzu, um seine Struktur zu definieren. Mit diesen untergeordneten Eigenschaften können Sie die Felder und Attribute angeben, die das Objekt enthält, und sie können später an Datenquellen gebunden werden, sobald Ihre Datenintegrationen konfiguriert sind. Dadurch wird sichergestellt, dass das Datenmodellobjekt voll funktionsfähig und für die Verwendung in Formularen bereit ist.

Hinzufügen von untergeordneten Eigenschaften child-properties

Mit dem Formulardatenmodell-Editor (FDM) können Sie untergeordnete Eigenschaften in einem Datenmodellobjekt erstellen. Eine neu erstellte untergeordnete Eigenschaft ist standardmäßig an keine Eigenschaft in einer Datenquelle gebunden. Sie können die untergeordnete Eigenschaft später an eine andere Eigenschaft im enthaltenden Datenmodellobjekt binden.

Erstellen einer untergeordneten Eigenschaft:

  1. Wählen Sie in einem Formulardatenmodell ein Datenmodellobjekt und dann Untergeordnete Eigenschaft erstellen aus.

  2. Geben Sie im Dialogfeld Untergeordnete Eigenschaft erstellen unter Name und Typ einen Namen bzw. einen Datentyp für die Eigenschaft an. Sie können optional einen Titel und eine Beschreibung für die Eigenschaft angeben.

  3. Aktivieren Sie Berechnet wenn die Eigenschaft eine berechnete Eigenschaft ist, eine Eigenschaft, deren Wert anhand einer Regel oder eines Ausdrucks ausgewertet wird, direkt eingegeben zu werden. Weitere Informationen finden Sie unter Bearbeiten von Eigenschaften.

  4. Wenn das Datenmodellobjekt an eine Datenquelle gebunden ist, wird die hinzugefügte untergeordnete Eigenschaft automatisch an die Eigenschaft des übergeordneten Datenmodellobjekts mit demselben Namen und Datentyp gebunden. Diese automatische Bindung stimmt sowohl mit dem Namen als auch mit dem Datentyp überein, sodass die untergeordnete Eigenschaft ohne zusätzliche manuelle Schritte mit der übergeordneten Eigenschaft konsistent bleibt.

    Um eine untergeordnete Eigenschaft manuell mit einer Datenmodellobjekteigenschaft zu verknüpfen, wählen Sie das Symbol zum Durchsuchen neben dem Feld Bindungsverweis aus. Im Dialogfeld Objekt auswählen sind alle Eigenschaften des übergeordneten Datenmodellobjekts aufgeführt. Wählen Sie eine Eigenschaft aus, an die gebunden werden soll, und dann das Häkchensymbol. Sie können nur eine Eigenschaft desselben Datentyps wie die untergeordnete Eigenschaft auswählen, da für eine gültige Bindung eine Übereinstimmung des Datentyps erforderlich ist.

  5. Wählen Sie Fertig aus, um die untergeordnete Eigenschaft zu speichern, und wählen Sie Speichern aus, um das Formulardatenmodell (FDM) zu speichern. Die untergeordnete Eigenschaft wird jetzt zum Datenmodellobjekt hinzugefügt.

Nachdem Sie Datenmodellobjekte und -eigenschaften erstellt haben, können Sie weiterhin adaptive Forms auf Grundlage des Formulardatenmodells (FDM) erstellen. Wenn später Datenquellen verfügbar und konfiguriert sind, können Sie das Formulardatenmodell (FDM) an Datenquellen binden. Daher wird die Bindung automatisch in allen zugehörigen adaptiven Forms aktualisiert, sodass Änderungen ohne manuelle Neukonfiguration weitergegeben werden. Weitere Informationen zum Erstellen des adaptiven Forms mithilfe des Formulardatenmodells (FDM) finden ​ unter „Verwenden eines Formulardatenmodells.

Binden von Datenmodellobjekten und -eigenschaften bind-data-model-objects-and-properties

Wenn die Datenquellen, die Sie in das Formulardatenmodell (FDM) integrieren möchten, verfügbar sind, können Sie sie zum Formulardatenmodell (FDM) hinzufügen, wie in Aktualisieren von Datenquellen beschrieben. Ein ungebundenes Datenmodellobjekt oder eine -eigenschaft ist ein Datenmodellobjekt, das bzw. die im Formulardatenmodell (FDM) vorhanden ist, aber noch keinem Feld in einer verbundenen Datenquelle zugeordnet ist. Daher können keine Daten gelesen oder geschrieben werden, bis eine Bindung hergestellt ist. Gehen Sie dann wie folgt vor, um die ungebundenen Datenmodellobjekte und -eigenschaften zu binden:

  1. Wählen Sie im Formulardatenmodell die ungebundene Datenquelle aus, die Sie an eine Datenquelle binden möchten.

  2. Wählen Sie Eigenschaften bearbeiten aus.

  3. Wählen Sie im Bedienfeld Eigenschaften bearbeiten das Symbol zum Durchsuchen neben dem Feld Bindung aus. Mit dem Symbol Durchsuchen wird das Objekt auswählen Dialogfeld geöffnet, in dem die im Formulardatenmodell (FDM) hinzugefügten Datenquellen aufgelistet sind.

    select-object

  4. Erweitern Sie die Datenquellenstruktur und wählen Sie ein Datenmodellobjekt, mit dem eine Bindung hergestellt werden soll, und klicken Sie dann auf das Häkchen.

  5. Wählen Sie Fertig aus, um die Eigenschaften zu speichern, und wählen Sie dann Speichern aus, um das Formulardatenmodell zu speichern. Das Datenmodellobjekt ist jetzt an eine Datenquelle gebunden. Dadurch wird sichergestellt, dass das -Objekt zur Laufzeit aus der verbundenen Datenquelle lesen und in diese schreiben kann. Infolge des Speicherns wird das Datenmodellobjekt nicht mehr als ungebunden markiert, was bestätigt, dass die Bindung abgeschlossen ist.

    bound-model-object

Konfigurieren von Services configure-services

Durch das Konfigurieren von Lese- und Schreibdiensten kann ein Datenmodellobjekt Daten in einem Formulardatenmodell (FDM) lesen und schreiben. Führen Sie die folgenden Schritte aus, um Lese- und Schreibdienste für ein Datenmodellobjekt zu konfigurieren:

  1. Wählen Sie das Kontrollkästchen am oberen Rand des Datenmodellobjekts und dann Eigenschaften bearbeiten aus.

    edit-properties

    Bearbeiten von Eigenschaften, um Lese- und Schreib-Services für Datenmodellobjekte zu konfigurieren

    Der Dialog Eigenschaften bearbeiten wird geöffnet.

    edit-properties-2

    Dialog „Eigenschaften bearbeiten“

    note
    NOTE
    Zusätzlich zu Datenmodellobjekten und Services enthält das OData-Metadatendokument (Open Data Protocol) des Service Navigationseigenschaften die die Verknüpfung zwischen zwei Datenmodellobjekten definieren. Wenn Sie eine OData-Dienst-Datenquelle zu einem Formulardatenmodell (FDM) hinzufügen, steht im Formulardatenmodell (FDM) ein Dienst für alle Navigationseigenschaften in einem Datenmodellobjekt zur Verfügung. Mithilfe dieses Service können Sie die Navigationseigenschaften des entsprechenden Datenmodellobjekts lesen.
    Weitere Informationen zur Verwendung des Service finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Services.
  2. Schalten Sie Objekt der obersten Ebene um, um anzugeben, ob das Datenmodellobjekt ein Modellobjekt der obersten Ebene ist.

    Datenmodellobjekte, die in einem Formulardatenmodell (FDM) konfiguriert sind, stehen auf der Registerkarte „Datenmodellobjekte“ im Inhaltsbrowser für adaptive Formulare zur Verfügung, die auf dem Formulardatenmodell (FDM) basieren. Wenn Sie eine Verknüpfung zwischen zwei Datenmodellobjekten hinzufügen, wird das Ziel-Datenmodellobjekt auf der Registerkarte Datenmodellobjekte“ unter dem Ausgangs-Datenmodellobjekt. Wenn das verschachtelte Datenmodell ein Objekt der obersten Ebene ist, wird es auch separat auf der Registerkarte Datenmodellobjekte angezeigt. Daher erscheint das -Objekt zweimal - ein Eintrag innerhalb der verschachtelten Hierarchie und ein weiterer außerhalb -, was Formularautoren verwirren kann. Damit das zugeordnete Datenmodellobjekt nur in der verschachtelten Hierarchie angezeigt wird, deaktivieren Sie die Eigenschaft Objekt der obersten Ebene. Dadurch wird sichergestellt, dass Formularautoren einen einzelnen, eindeutigen Eintrag sehen, was die Verwirrung beim Erstellen von Formularen verringert.

  3. Wählen Sie die Dienste Lesen und Schreiben für das ausgewählte Datenmodellobjekt aus. Die Argumente für die ausgewählten Services werden dann zur Konfiguration angezeigt.

    read-write-services

    Für die Mitarbeiterdatenquelle konfigurierte Lese- und Schreib-Services

  4. Wählen Sie aem63edit für das Argument des Lesedienstes aus, um dieses an ein Benutzerprofilattribut, ein Anforderungsattribut oder einen Literalwert zu binden, und geben Sie den Bindungswert an.

  5. Wählen Sie Fertig aus, um das Argument zu speichern. Wählen Sie dann erneut Fertig aus, um die Eigenschaften zu speichern, und wählen Sie schließlich Speichern aus, um das Formulardatenmodell (FDM) zu speichern.

Binden von Argumenten des Lese-Service bindargument

Binden Sie ein Argument des Lese-Service an einen von drei Bindungstypen - ein Benutzerprofilattribut, ein Anforderungsattribut oder einen Literalwert - basierend auf einem Bindungswert. Der Lesedienst verwendet diesen Wert als Argument, um die mit dem angegebenen Wert verknüpften Details aus der Datenquelle abzurufen. Jeder Bindungstyp bestimmt, woher der Argumentwert stammt: eine feste Eingabe, das Profil des angemeldeten Benutzers oder die eingehende Anfrage.

Literalwert literal-value

Wählen Sie Literal aus dem Dropdownmenü Bindung an aus und geben Sie einen Wert in das Feld Bindungswert ein. Die mit dem Wert verknüpften Details werden aus der Datenquelle abgerufen. Verwenden Sie diese Option, um Details abzurufen, die mit einem statischen Wert verknüpft sind, da eine Literalbindung eine feste, unveränderliche Eingabe bereitstellt, die nicht vom Benutzer oder der Anfrage abhängt.

In diesem Beispiel werden die mit 4367655678 als Wert für das mobilenum-Argument verknüpften Details aus der Datenquelle abgerufen. Die zugehörigen Details, die zurückgegeben werden, wenn Sie den Wert für ein Mobilnummerargument übergeben, können Eigenschaften wie Kundenname, Kundenadresse und Stadt enthalten.

Literalwert

Benutzerprofilattribut user-profile-attribute

Wählen Sie Benutzerprofilattribut aus dem Dropdownmenü Bindung an aus und geben Sie den Attributnamen in das Feld Bindungswert ein. Die Details des Benutzers, der bei der Experience Manager-Instanz angemeldet ist, werden auf Grundlage des Attributnamens aus der Datenquelle abgerufen.

Der im Feld Bindungswert angegebene Attributname muss den vollständigen Bindungspfad bis zum Attributnamen für den Benutzer enthalten. Öffnen Sie die folgende URL, um auf die Benutzerdetails in CRXDE zuzugreifen:

https://[server-name]:[port]/crx/de/index.jsp#/home/users/

Benutzerprofil

Geben Sie in diesem Beispiel profile.empid im Feld Bindungswert für den grios-Benutzer an.

Bearbeiten eines Arguments

Das id Argument nimmt den Wert des empid Attributs aus dem Benutzerprofil und übergibt ihn als Argument an den Lese-Service. Der Lese-Service liest dann die Werte der zugehörigen Eigenschaften aus dem Mitarbeiter-Datenmodellobjekt für die empid, die mit dem angemeldeten Benutzer verknüpft sind, und gibt sie zurück.

Anforderungsattribut request-attribute

Verwenden Sie die Bindung für Anforderungsattribute, um die zugehörigen Eigenschaften aus der Datenquelle basierend auf einem in der eingehenden Anfrage angegebenen Wert abzurufen.

  1. Wählen Sie Anforderungsattribut aus dem Dropdownmenü Bindung an aus und geben Sie den Attributnamen in das Feld Bindungswert ein.

  2. Erstellen Sie eine Überlagerung für head.jsp. Um die Überlagerung zu erstellen, öffnen Sie CRX DE und kopieren Sie die Datei https://<server-name>:<port number>/crx/de/index.jsp#/libs/fd/af/components/page2/afStaticTemplatePage/head.jsp nach https://<server-name>:<port number>/crx/de/index.jsp#/apps/fd/af/components/page2/afStaticTemplatePage/head.jsp.

    note
    NOTE
    • Wenn Sie eine statische Vorlage verwenden, überlagern Sie head.jsp unter:
      /libs/fd/af/components/page2/afStaticTemplatePage/head.jsp
    • Wenn Sie eine bearbeitbare Vorlage verwenden, überlagern Sie die Datei aftemplatedpage.jsp unter:
      /libs/fd/af/components/page2/aftemplatedpage/aftemplatedpage.jsp
  3. Legen Sie paramMap für das Anforderungsattribut fest. Fügen Sie beispielsweise folgenden Code in die JSP-Datei im Ordner „Apps“ ein:

    code language-javascript
    <%Map paraMap = new HashMap();
     paraMap.put("<request_attribute>",request.getParameter("<request_attribute>"));
     request.setAttribute("paramMap",paraMap);
    

    Verwenden Sie beispielsweise den folgenden Code, um den Wert von petId aus der Datenquelle abzurufen:

    code language-javascript
    <%Map paraMap = new HashMap();
    paraMap.put("petId",request.getParameter("petId"));
    request.setAttribute("paramMap",paraMap);%>
    

Daher ruft der Lese-Service die Details basierend auf dem in der Anfrage angegebenen Attributnamen aus der Datenquelle ab.

Wenn Sie beispielsweise das Attribut petid=100 in der Anfrage angeben, werden die mit diesem Attributwert verknüpften Eigenschaften aus der Datenquelle abgerufen.

Hinzufügen von Verknüpfungen add-associations

Verknüpfungen werden normalerweise zwischen Datenmodellobjekten in einer Datenquelle erstellt, und diese Verknüpfungen bleiben erhalten, wenn die Objekte in ein Formulardatenmodell (FDM) übernommen werden. Eine Zuordnung definiert die Beziehung zwischen zwei Datenmodellobjekten und kann entweder eins-zu-eins oder eins-zu-viele sein.

Eine -zu-viele- besteht, wenn sich ein einzelner Datensatz auf mehrere Datensätze bezieht. Beispielsweise können einem Mitarbeiter mehrere abhängige Elemente mit dem Mitarbeiterdatensatz verknüpft sein. Diese Beziehung wird als Eins-zu-Viele-Verknüpfung bezeichnet und durch 1:n auf der Linie dargestellt, die die zugehörigen Datenmodellobjekte verbindet. Eine -zu-eins-Verknüpfung liegt vor, wenn eine Beziehung genau einen übereinstimmenden Datensatz zurückgibt. Wenn eine Verknüpfung beispielsweise einen eindeutigen Mitarbeiternamen für eine bestimmte Mitarbeiter-ID zurückgibt, handelt es sich um eine Eins-zu-eins-Verknüpfung.

Wenn Sie verknüpfte Datenmodellobjekte aus einer Datenquelle einem Formulardatenmodell (FDM) hinzufügen, werden ihre Verknüpfungen beibehalten und durch Pfeillinien verbunden angezeigt. Sie können auch Verknüpfungen zwischen Datenmodellobjekten über unterschiedliche Datenquellen hinweg innerhalb eines Formulardatenmodells (FDM) hinzufügen, sodass Sie verwandte Daten kombinieren können, die aus verschiedenen Back-End-Systemen stammen.

NOTE
Vordefinierte Verknüpfungen in einer JDBC-Datenquelle (Java Database Connectivity) werden im Formulardatenmodell (FDM) nicht beibehalten, da diese Beziehungen nicht automatisch übernommen werden. Sie müssen sie manuell erstellen.

So fügen Sie eine Verknüpfung hinzu:

  1. Aktivieren Sie das Kontrollkästchen am oberen Rand eines Datenmodellobjekts, um es auszuwählen, und wählen Sie dann Verknüpfung hinzufügen aus. Das Dialogfeld „Verknüpfung hinzufügen“ wird geöffnet.

    add-associated

    note
    NOTE
    Zusätzlich zu Datenmodellobjekten und Services enthält ein OData-Service-Metadatendokument (Open Data Protocol) Navigationseigenschaften, die die Verknüpfung zwischen zwei Datenmodellobjekten definieren. Sie können diese Navigationseigenschaften verwenden, wenn Sie Verknüpfungen in einem Formulardatenmodell (FDM) hinzufügen. Weitere Informationen finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Services.

    Der Dialog Verknüpfung hinzufügen wird geöffnet.

    add-associated-2

    Dialogfeld „Verknüpfung hinzufügen“

  2. Tun Sie Folgendes im Bereich „Verknüpfung hinzufügen“:

    • Geben Sie einen Titel für die Verknüpfung ein.
    • Wählen Sie den Verknüpfungstyp: Eins-zu-Eins oder Eins-zu-Viele.
    • Wählen Sie das Datenmodellobjekt aus, mit dem verknüpft werden soll.
    • Wählen Sie den Lese-Service, der die Daten aus dem ausgewählten Modellobjekt lesen soll. Das Argument des Lese-Service wird angezeigt. Bearbeiten Sie bei Bedarf das Argument, um es zu ändern, und binden Sie es an die Eigenschaft des Datenmodellobjekts, das Sie verknüpfen möchten.

    Im folgenden Beispiel ist dependentid das Standardargument für den Lese-Service des Datenmodellobjekts „Angehörige“.

    add-associated-example

    Standardargument für den Lese-Service für „Angehörige“ ist „dependentid“

    Das Argument muss jedoch eine gemeinsame Eigenschaft der verknüpfenden Datenmodellobjekte sein, was in diesem Beispiel Employeeid ist. Da die Zuordnung von einem übereinstimmenden Schlüssel abhängt, muss daher das Employeeid-Argument an die id-Eigenschaft des Mitarbeiter-Datenmodellobjekts gebunden sein. Diese Bindung ermöglicht es dem System, die zugehörigen Details zu Angehörigen aus dem Datenmodellobjekt „Angehörige“ abzurufen.

    add-associated-example-2

    Aktualisiertes Argument und Bindung

    Wählen Sie Fertig aus, um das Argument zu speichern.

  3. Wählen Sie Fertig aus, um die Verknüpfung zu speichern, und wählen Sie dann Speichern aus, um das Formulardatenmodell (FDM) zu speichern.

  4. Wiederholen Sie die Schritte, um weitere Verknüpfungen nach Bedarf zu erstellen.

NOTE
Die hinzugefügte Verknüpfung wird im Feld „Datenmodellobjekt“ mit dem angegebenen Titel und einer Zeile angezeigt, die die verknüpften Datenmodellobjekte miteinander verbindet.
Sie können eine Verknüpfung bearbeiten, indem Sie das Kontrollkästchen neben der Verknüpfung auswählen und Verknüpfung bearbeiten auswählen.

added-association

Bearbeiten von Eigenschaften properties

Durch das Bearbeiten von Eigenschaften können Sie konfigurieren, wie sich Datenmodellobjekte, ihre Eigenschaften und Dienste im Formulardatenmodell (FDM) verhalten. Über den Bereich Eigenschaften bearbeiten definieren Sie die Services, Datentypen, Schlüssel und Argumente, die bestimmen, wie der FDM Daten liest, schreibt und zurückgibt.

So bearbeiten Sie Eigenschaften:

  1. Aktivieren Sie das Kontrollkästchen neben einem Datenmodellobjekt, einer Eigenschaft oder einem Service im Formulardatenmodell (FDM).

  2. Wählen Sie Eigenschaften bearbeiten aus. Der Bereich Eigenschaften bearbeiten für das Modellobjekt, die Eigenschaft oder den Service in der Auswahl wird geöffnet.

    • Datenmodellobjekt: Geben Sie die Lese- und Schreibdienste) an bearbeiten Sie Argumente. Diese Services bestimmen, wie Daten aus der zugrunde liegenden Datenquelle für das -Objekt abgerufen und in ihr gespeichert werden.

    • Eigenschaft: Geben Sie den Typ, Untertyp und format für die Eigenschaft an. Sie können die ausgewählte Eigenschaft auch als Primärschlüssel) für Datenmodellobjekt festlegen, das jeden Datensatz eindeutig identifiziert.

    • Service: Geben Sie das Eingabemodellobjekt, den Ausgabetyp und Argumente für den Service an. Bei einem Get-Service können Sie angeben, ob ein Array zurückgegeben wird, um sicherzustellen, dass der Service mehrere Datensätze korrekt verarbeitet.

      edit-properties-service

    Dialog „Eigenschaften bearbeiten“ für einen Get-Service

  3. Wählen Sie Fertig aus, um die Eigenschaftskonfiguration zu speichern, und wählen Sie dann Speichern aus, um das Formulardatenmodell (FDM) zu speichern. Durch dieses endgültige Speichern werden alle Eigenschaftsänderungen an das FDM übertragen.

Erstellen berechneter Eigenschaften computed

Eine berechnete Eigenschaft leitet ihren Wert automatisch von einer Regel oder einem Ausdruck ab. Mithilfe einer Regel können Sie den Wert einer berechneten Eigenschaft auf eine Literal-Zeichenfolge, eine Zahl, das Ergebnis eines mathematischen Ausdrucks oder den Wert einer anderen Eigenschaft im Formulardatenmodell (FDM) festlegen Da der Wert nicht manuell eingegeben, sondern berechnet wird, reduzieren berechnete Eigenschaften Dateneingabefehler und halten abhängige Felder konsistent, wenn sich die zugrunde liegenden Daten ändern.

Beispiel: Berechnete FullName-Eigenschaft erstellen

Sie können beispielsweise eine berechnete Eigenschaft (FullName erstellen, deren das Ergebnis der Verkettung der vorhandenen Eigenschaften FirstName und LastName ist. Gehen Sie dazu wie folgt vor:

  1. Erstellen Sie eine neue Eigenschaft mit dem Namen FullName, deren Datentyp "".

  2. Aktivieren Sie Berechnet und wählen Sie Fertig, um die Eigenschaft zu erstellen.

    computed

    Die FullName berechnete Eigenschaft wird erstellt. Neben der Eigenschaft wird ein Symbol angezeigt, das angibt, dass es sich um eine berechnete Eigenschaft handelt.

    calculate-prop

  3. Wählen Sie die FullName-Eigenschaft und dann Regel bearbeiten aus. Das Fenster Regeleditor wird geöffnet.

  4. Wählen Sie im Fenster des Regeleditors Erstellen aus. Ein Regelfenster Wert festlegen wird geöffnet.

    Wählen Sie in Dropdown-Liste Option auswählen die Option „Mathematischer Ausdruck. Die anderen verfügbaren Optionen sind Formulardatenmodellobjekt und Zeichenfolge.

  5. Wählen Sie in dem mathematischen Ausdruck FirstName als erstes Objekt und LastName als zweites Objekt aus. Wählen Sie plus als Operator.

    Wählen Sie Fertig und dann Schließen aus, um das Regeleditorfenster zu schließen. Die abgeschlossene Regel sieht ähnlich der folgenden aus.

    rule

  6. Wählen Sie im Formulardatenmodell (FDM) die Option Speichern aus. Die berechnete Eigenschaft wird konfiguriert. Dadurch wird sichergestellt, der Wert "" automatisch aktualisiert wird, wenn FirstName oder LastName geändert wird, sodass der verkettete vollständige Name immer mit den Quellfeldern synchronisiert bleibt.

Arbeiten mit Navigationseigenschaften von OData-Services work-with-navigation-properties-of-odata-services

Navigationseigenschaften in OData-Services definieren die Zuordnungen zwischen zwei Datenmodellobjekten, wodurch festgelegt wird, wie sich eine Entität auf eine andere bezieht und wie diese durchlaufen werden kann. Diese Eigenschaften werden für einen Entitätstyp oder einen komplexen Typ definiert und ermöglichen es einem Client, von einem Datensatz zu den zugehörigen Datensätzen zu wechseln. So enthält beispielsweise im folgenden Extract aus der Metadatendatei der TripPin OData-Beispieldienste die Entität Person drei Navigationseigenschaften: Friends, BestFriend und Trips.

Weitere Informationen zu Navigationseigenschaften finden Sie in der OData-Dokumentation.

<edmx:Edmx xmlns:edmx="https://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<script/>
<edmx:DataServices>
<Schema xmlns="https://docs.oasis-open.org/odata/ns/edm" Namespace="Microsoft.OData.Service.Sample.TrippinInMemory.Models">
<EntityType Name="Person">
<Key>
<PropertyRef Name="UserName"/>
</Key>
<Property Name="UserName" Type="Edm.String" Nullable="false"/>
<Property Name="FirstName" Type="Edm.String" Nullable="false"/>
<Property Name="LastName" Type="Edm.String"/>
<Property Name="MiddleName" Type="Edm.String"/>
<Property Name="Gender" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.PersonGender" Nullable="false"/>
<Property Name="Age" Type="Edm.Int64"/>
<Property Name="Emails" Type="Collection(Edm.String)"/>
<Property Name="AddressInfo" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location)"/>
<Property Name="HomeAddress" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Location"/>
<Property Name="FavoriteFeature" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature" Nullable="false"/>
<Property Name="Features" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Feature)" Nullable="false"/>
<NavigationProperty Name="Friends" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person)"/>
<NavigationProperty Name="BestFriend" Type="Microsoft.OData.Service.Sample.TrippinInMemory.Models.Person"/>
<NavigationProperty Name="Trips" Type="Collection(Microsoft.OData.Service.Sample.TrippinInMemory.Models.Trip)"/>
</EntityType>

So werden Navigationseigenschaften im Formulardatenmodell angezeigt

Wenn Sie einen OData-Service in einem Formulardatenmodell (FDM) konfigurieren werden alle Navigationseigenschaften in einem Entitäts-Container automatisch über einen einzigen Service im FDM zur Verfügung gestellt. Diese Konsolidierung bedeutet, dass Sie nicht für jede Verknüpfung einen separaten Service benötigen, da der FDM sie zusammen aufbereitet. In diesem Beispiel können im OData-Service „TripPin“ die drei Navigationseigenschaften des Person Entitätencontainers über ein und denselben GET LINK im FDM gelesen werden.

Im Folgenden wird der GET LINK of Person /People-Service im FDM hervorgehoben. Dies ist ein kombinierter Service für die drei Navigationseigenschaften Friends, BestFriend und Trips in der Person-Entität des OData-Service „TripPin“.

nav-prop-service

Sobald Sie den GET LINK-Service auf der Registerkarte Services im FDM hinzufügen, können Sie dessen Eigenschaften bearbeiten, um das Modellobjekt für die Ausgabe und die im Service zu verwendende Navigationseigenschaft zu wählen. Beispielsweise verwendet der folgende GET LINK of Person /People-Dienst Trip als Ausgabemodellobjekt und Trips als Navigationseigenschaft.

edit-prop-nav-prop

NOTE
Die im Feld Standardwert des Arguments NavigationPropertyName verfügbaren Werte hängen vom Status des Arrays Return? Schaltfläche umschalten. Wenn es aktiviert ist, zeigt das Feld Navigationseigenschaften vom Typ Sammlung an.

In diesem Beispiel können Sie auch Person als Ausgabemodellobjekt auswählen und das Argument für die Navigationseigenschaft auf Friends oder BestFriend festlegen, je nachdem, ob Array zurückgeben? ist aktiviert oder deaktiviert.

edit-prop-nav-prop2

Verwenden von Navigationseigenschaften in Verknüpfungen

Darüber hinaus können Sie beim Hinzufügen von Verknüpfungen im FDM einen GET LINK-Service auswählen und die entsprechenden Navigationseigenschaften konfigurieren. Das Auswählen einer Navigationseigenschaft ist jedoch nur möglich, wenn das Feld Bindung an auf Literal festgelegt ist. Aufgrund dieser Anforderung können die Optionen für die Navigationseigenschaft erst ausgewählt werden, wenn diese Bindung korrekt konfiguriert ist.

add-associated-nav-prop

Beispieldaten generieren und bearbeiten sample

Der Formulardatenmodell (FDM)- generiert Beispieldaten für alle Datenmodellobjekteigenschaften in einem Formulardatenmodell, einschließlich berechneter Eigenschaften. Diese Beispieldaten bestehen aus einem Satz zufälliger Werte, die dem für jede Eigenschaft konfigurierten Datentyp entsprechen, sodass Sie realistische Testwerte erhalten, ohne dass eine Live-Datenquellenverbindung erforderlich ist.

Über Beispieldaten

Beispieldaten dienen als vorgefertigte Testeingabe, mit der Sie eine Vorschau anzeigen und überprüfen können, wie sich ein Formulardatenmodell verhält, bevor Sie es an Produktionsdaten binden. Da jeder generierte Wert den konfigurierten Datentyp seiner -Eigenschaft respektiert, spiegelt der Beispielsatz die erwartete Struktur und das erwartete Format echter Datensätze wider, was Ihnen bei der Überprüfung von Bindungen, berechneter Logik und Formularverhalten zu einem frühen Zeitpunkt der Entwicklung hilft.

Sie können auch die generierten Werte bearbeiten und Ihre Änderungen speichern. Gespeicherte Daten werden auch dann beibehalten, wenn Sie die Beispieldaten neu generieren, sodass Ihre manuell kuratierten Testfälle über alle Regenerierungen hinweg bestehen bleiben. Dadurch ist es praktisch, stabile, wiederverwendbare Testszenarien zu erstellen, anstatt Bearbeitungen jedes Mal zu verlieren, wenn neue zufällige Werte erzeugt werden.

Schritte zum Generieren und Bearbeiten von Beispieldaten

  1. Öffnen Sie ein Formulardatenmodell (FDM) und wählen Sie Beispieldaten bearbeiten aus. Der FDM-Editor generiert die Beispieldaten und zeigt sie im Fenster "bearbeiten an.

    Generieren von Beispieldaten

  2. Bearbeiten Sie Fenster „Beispieldaten bearbeiten die Daten nach Bedarf und wählen Sie "". Die bearbeiteten Beispieldaten werden gespeichert und beibehalten und bleiben auch nach dem Regenerieren der Beispieldaten verfügbar.

Testen von Datenmodellobjekten und Diensten test-data-model-objects-and-services

Sobald Ihr Formulardatenmodell (FDM) konfiguriert ist, testen Sie die konfigurierten Datenmodellobjekte und Services, bevor Sie den FDM in einem Live-Formular bereitstellen, um zu bestätigen, dass sie erwartungsgemäß funktionieren. Beim Testen vor der Bereitstellung wird überprüft, ob alle Objekte und Services die richtigen Daten zurückgeben, wodurch das Risiko von Laufzeitfehlern bei der Inbetriebnahme des Formulars verringert wird.

Testen von Datenmodellobjekten und Diensten

  1. Wählen Sie ein Datenmodellobjekt oder einen Dienst im Formulardatenmodell (FDM) aus und wählen Sie Modellobjekt testen bzw Service.

    Das Fenster Formulardatenmodell testen wird geöffnet.

    test-data-model

  2. Wählen Sie Fenster Formulardatenmodell testen das zu testende Datenmodellobjekt bzw. den Service aus dem Bereich Eingabe aus. Dadurch wird das spezifische Objekt oder der Service identifiziert, das bzw. den Sie validieren möchten.

  3. Geben Sie einen Argumentwert im Test-Code an und wählen Sie dann Test aus. Ein erfolgreicher Test gibt die Ausgabe im Bereich Ausgabe zurück und bestätigt, dass das ausgewählte Objekt oder der ausgewählte Service korrekt konfiguriert ist und in der Lage ist, Daten wie vorgesehen abzurufen oder zu verarbeiten.

    Testergebnisse

Mit demselben Verfahren können Sie auch zusätzliche Datenmodellobjekte und Dienste im Formulardatenmodell (FDM) validieren, um sicherzustellen, dass das gesamte Modell vor der Verwendung zuverlässig funktioniert.

Automatisiertes Validieren von Eingabedaten automated-validation-of-input-data

Das Formulardatenmodell (FDM) validiert automatisch Daten, die als Eingabe empfangen werden, wenn die DermisBridge-API aufgerufen wird, wobei die im Formulardatenmodell definierten Validierungskriterien angewendet werden. Diese Validierung wird durch den ValidationOptions Flag-Satz im Abfrageobjekt gesteuert, das zum Aufrufen der API verwendet wird. Wenn für das ValidationOptions-Flag kein Wert festgelegt ist, führt der FDM standardmäßig eine EINFACH-Validierung der Eingabedaten durch.

ValidationOptions-Flag-Ebenen

Das ValidationOptions-Flag akzeptiert einen der folgenden drei Werte, von denen jeder definiert, wie streng der FDM die Eingabe validiert:

  • FULL: Der FDM validiert die Eingabe anhand aller definierten Begrenzungen. Verwenden Sie diese Ebene, um alle Datentypen und Geschäftsregelbeschränkungen zu erzwingen, bevor die Daten verarbeitet werden.
  • OFF: Der FDM führt keine Validierung durch. Eingabedaten werden ohne Einschränkungsprüfungen durchgelassen.
  • BASIC: Der FDM validiert nur die required- und nullable. Dadurch wird sichergestellt, dass Pflichtfelder vorhanden sind und Regeln zur Nullverarbeitung ohne Auswertung des vollständigen Einschränkungssatzes berücksichtigt werden.

Wenn für das Flag “ValidationOptions” kein Wert festgelegt ist, wendet das FDM standardmäßig BASIC-Validierung an.

Validierungs-Flag festlegen

Im folgenden Beispiel wird das Validierungs-Flag auf FULL festgelegt, wodurch eine Validierung anhand aller Begrenzungen aktiviert wird:

operationOptions.setValidationOptions(ValidationOptions.FULL);
NOTE
Der Wert, den Sie für ein Attribut in den Eingabedaten angeben, muss mit dem Datentyp übereinstimmen, der für dieses Attribut im Metadatendokument definiert ist.
Da die Überprüfung des Datentyps unabhängig von der Validierungsebene erzwungen wird, gibt die DermisBridge-API eine Ausnahme zurück, wenn der angegebene Wert nicht mit dem definierten Datentyp übereinstimmt unabhängig vom Wert des ValidationOptions-Flags. Wenn als Protokollebene "" festgelegt ist protokolliert die API den entsprechenden Fehler in der Datei error.log.

Datentypeinschränkungen nach Datenquelle

Das Formulardatenmodell (FDM) validiert Eingabedaten anhand einer definierten Liste von Datentypbegrenzungen. Diese Liste von Einschränkungen kann je nach zugrunde liegender Datenquelle) variieren sodass die genauen Einschränkungen, die bei der Validierung erzwungen werden, von der Datenquelle bestimmt werden, die dem Formulardatenmodell zugeordnet ist.

In der folgenden Tabelle sind die Datentypbegrenzungen aufgeführt, die auf Eingabedaten für jede unterstützte Datenquelle angewendet werden:

Begrenzungen
Beschreibung
Eingabedatenquelle
required
Bei Wert „true“ muss der Parameter in die Eingabedaten aufgenommen werden.
Swagger, WSDL und Datenbank
nullable
Bei Wert „true“ kann der Wert für den Parameter in den Eingabedaten auf Null gesetzt werden.
WSDL, OData und Datenbank
maximum
Gibt die Obergrenze für numerische Werte an. Der als Obergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
minimum
Gibt die Untergrenze für numerische Werte an. Der als Untergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
exclusiveMaximum
Gibt die Obergrenze für numerische Werte an. Der als Obergrenze angegebene Wert darf nicht dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
exclusiveMinimum
Gibt die Untergrenze für numerische Werte an. Der als Untergrenze angegebene Mindestwert darf nicht dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
minLength
Gibt die Untergrenze für die Anzahl der Zeichen in einer Zeichenfolge an. Der als Untergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
maxLength
Gibt die Obergrenze für die Anzahl der Zeichen in einer Zeichenfolge an. Der als Obergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger, WSDL, OData und Datenbank
pattern
Gibt eine feste Sequenz an Zeichen an. Die Eingabezeichenfolge wird nur dann erfolgreich validiert, wenn die Zeichen dem angegebenen Muster entsprechen.
Swagger
minItems
Gibt die Mindestanzahl von Elementen in einem Array an. Der als Untergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
maxItems
Gibt die maximale Anzahl von Elementen in einem Array an. Der als Obergrenze angegebene Wert kann auch dem Parameter in den Eingabedaten zugewiesen werden.
Swagger und WSDL
uniqueItems
Bei Wert „true“ müssen alle Elemente des Arrays in den Eingabedaten eindeutig sein.
Swagger
enum (string)
Beschränkt den Wert eines Parameters in den Eingabedaten auf einen festen Satz von Zeichenfolgewerten. Es muss sich um ein Array mit mindestens einem Element handeln, wobei jedes Element eindeutig ist.
Swagger, WSDL und OData
enum (number)
Beschränkt den Wert eines Parameters in den Eingabedaten auf einen festen Satz numerischer Werte. Es muss sich um ein Array mit mindestens einem Element handeln, wobei jedes Element eindeutig ist.
WSDL

Eingabedatenvalidierung mithilfe von Swagger-Beschränkungen

Die Eingabedaten bestehen die Validierung nur, wenn Bestell-ID vorhanden ist und ihr Wert in den Bereich (-10). In diesem Beispiel werden die Eingabedaten anhand der Begrenzungen maximum, minimum und required validiert, die in der Datei Swagger (OpenAPI) definiert sind. Diese drei Einschränkungstypen steuern die akzeptierte Eingabe wie folgt:

  • Erforderlich - Der Parameter muss angegeben werden. Bei einer fehlenden orderId schlägt die Validierung fehl.
  • minimum - Der Wert darf nicht kleiner als 1 sein.
  • maximum - Der Wert darf 10 nicht überschreiten.

Da die Einschränkungen direkt in der API-Definition deklariert werden, wird die Validierung automatisch auf Schemaebene erzwungen, bevor der Vorgang ausgeführt wird. Dadurch wird sichergestellt, dass nur wohlgeformte Anfragen den zugrunde liegenden Service erreichen.

   parameters: [
   {
   name: "orderId",
   in: "path",
   description: "ID of pet that must be fetched",
   required: true,
   type: "integer",
   maximum: 10,
   minimum: 1,
   format: "int64"
   }
   ]

Verhalten bei Validierungsfehlern und Fehlerprotokollierung

Das System löst eine Validierungsausnahme aus, wenn die Eingabedaten diese Kriterien nicht erfüllen. Als Ergebnis dieses Fehlers und wenn die Protokollebene auf "" festgelegt, wird ein Fehler in die Datei error.log geschrieben. Dieses Protokollierungsverhalten hilft Entwicklerinnen und Entwicklern dabei, genau zu diagnostizieren, welche Einschränkung verletzt wurde, da der Protokolleintrag den fehlschlagenden Parameter, die verletzte Einschränkung und den fehlerhaften Wert identifiziert.

Wenn Sie beispielsweise einen orderId von 16 übermitteln, überschreitet der deklarierte maximal 10, wodurch der folgende Protokolleintrag erzeugt wird:

21.01.2019 17:26:37.411 *ERROR* com.adobe.aem.dermis.core.validation.JsonSchemaValidator {"errorCode":"AEM-FDM-001-044","errorMessage":"Input validations failed during operation execution.","violations":{"/orderId":["numeric instance is greater than the required maximum (maximum: 10, found: 16)"]}}

Der Fehlereintrag erfasst den Fehlercode AEM-FDM-001-044, die "Input validations failed during operation execution." und einen violations, der das /orderId, die erforderliche Maximalanzahl von 10 und den gefundenen Wert (16) angibt. Diese strukturierten Details erleichtern die Identifizierung und Korrektur von Eingaben außerhalb des zulässigen Bereichs.

Nächste Schritte next-steps

Sie verfügen über ein funktionierendes Formulardatenmodell (FDM) das jetzt für die Verwendung in Workflows für adaptive Forms bereit ist. Ein Formulardatenmodell stellt die Struktur und die Beziehungen der Daten dar, die Ihre Formulare erfassen und mit verbundenen Datenquellen austauschen, und bietet ein einheitliches, wiederverwendbares Schema, an das adaptive Forms direkt gebunden werden kann. Da das Modell die zugrunde liegenden Daten-Services in einer einzigen konsistenten Ebene abstrahiert, ermöglicht es Formularen, aus diesen Quellen zu lesen und in diese zu schreiben, ohne dass für jedes neue Formular eine Integrationslogik neu erstellt werden muss.

Nachdem das Modell eingerichtet ist, können Sie es jetzt auf alle Aufgaben zum Erstellen von Formularen anwenden. Zu den häufigen nächsten Schritten gehören:

  • Binden Sie Formularfelder an das Modell sodass die Komponenten des adaptiven Formulars direkt den im FDM definierten Datenattributen zugeordnet werden, um eine konsistente Datenerfassung und -übermittlung sicherzustellen.
  • Vorbefüllen von Formularen mit vorhandenen Daten wird über das Modell abgerufen, wodurch das Benutzererlebnis durch Reduzierung der manuellen Dateneingabe verbessert wird.
  • Formularübermittlung konfigurieren um erfasste Daten über das Modell zurück in die verbundenen Datenquellen zu schreiben, wobei die Datensätze synchronisiert bleiben.
  • Verwenden Sie das Modell in mehreren Formularen erneut um die Konsistenz zu gewährleisten und den doppelten Konfigurationsaufwand zu reduzieren.

Die Wiederverwendung eines einzelnen Formulardatenmodells in Workflows fördert die Konsistenz und reduziert die laufende Wartung, da Aktualisierungen des Modells auf jedes Formular übertragen werden, das von diesem abhängig ist. Ausführliche Anleitungen zum Anwenden des Modells in Ihrem adaptiven Forms finden Sie unter Verwenden eines Formulardatenmodells (FDM).

recommendation-more-help
experience-manager-cloud-service-help-main-toc