Sie sehen sich Hilfeinhalte der folgenden Version an:

Mit der Datenintegration können Sie unterschiedliche Datenquellen verbinden und Formulardatenmodelle erstellen.
data-integeration

Unternehmensinfrastrukturen umfassen unterschiedliche Back-End-Systeme oder Datenquellen wie Datenbanken, Web-Services, REST-Services, OData-Services und CRM-Lösungen. Zusammen bilden sie ein Informationssystem, das Daten für Unternehmensanwendungen zur Abwicklung des Tagesgeschäfts bereitstellt. Umgekehrt erfassen die Anwendungen Daten und senden sie zurück, um die Datenquellen zu aktualisieren. 

AEM Forms-Anwendungen wie adaptive Formulare benötigen Integration mit Datenquellen, damit Daten abgerufen und Formulare und Dokumente wiedergegeben werden können. Für manche Zwecke werden diese Daten während der Interaktion der Benutzer mit dem Formular aus unterschiedlichen Datenquellen abgerufen. Beim Senden des Formulars werden die erfassten Daten in die jeweiligen Datenquellen geschrieben.

Verteilte, modulare Systeme bieten ihre Vorteile, die Herausforderung besteht jedoch darin, Datenverknüpfungen datenquellenübergreifend zu integrieren und zu erstellen. Datenintegration ist der Schlüssel zu einer funktionsfähigen und effizienten Unternehmensinfrastruktur mit unterschiedlichen Datenquellen, die für den Austausch von Geschäftsdaten mit Anwendungen verbunden sind.

Einführung in die AEM Forms-Datenintegration

AEM-forms-Data-Integeration

Mit der AEM Forms-Datenintegration können Sie unterschiedliche Datenquellen konfigurieren und Verbindungen zu ihnen herzustellen. Die folgenden Datenquellen werden standardmäßig unterstützt. Es ist jedoch möglich, mit nur wenigen Anpassungen auch andere Datenquellen zu integrieren.

  • Relationale Datenbanken: MySQL, Microsoft SQL Server, IBM DB2 und Oracle RDBMS
  • AEM-Benutzerprofil
  • RESTful Webservices
  • SOAP-basierte Webservices
  • OData-Dienstleistungen

Hinweis:

Unterstützung für OData-Services in der Datenintegration ist mit dem AEM Forms-Add-On-Paket für AEM 6.3 Cumulative Fix Pack 1 und neuere Versionen verfügbar.

Standardmäßig werden Authentifizierungstypen für OAuth2.0, Standardauthentifizierung und API-Schlüssel unterstützt und die Implementierung einer benutzerdefinierten Authentifizierung für den Zugriff auf Webdienste ist möglich.

In der intuitiven Benutzeroberfläche können Sie eine einheitliche Darstellung der Geschäftsbereiche und Dienste für sämtliche verbundenen Datenquellen erstellen. Diese einheitliche Darstellung wird als Formulardatenmodell bezeichnet. Es handelt sich um eine Erweiterung des JSON-Schemas. Die Entitäten in einem Formulardatenmodell werden als Datenmodellobjekte bezeichnet. Ein Formulardatenmodell gibt Ihnen folgende Möglichkeiten:

  • Zugreifen auf Datenmodellobjekte, Metadaten und Dienste aus verbundenen Datenquellen.
  • Erstellen von Verknüpfungen zwischen Datenmodellobjekten innerhalb und zwischen Datenquellen.
  • Aufrufen von Diensten für Datenmodellobjekte zum Abfragen von Daten aus und Schreiben von Daten in Datenquellen.

Nachdem Sie ein Formulardatenmodell erstellt haben, können Sie es in verschiedenen Workflows für adaptive Formulare verwenden, zum Beispiel:

  • Erstellen eines adaptiven Formulars basierend auf einem Formulardatenmodell.
  • Vorausfüllen eines adaptiven Formulars.
  • Aufrufen in einem Formulardatenmodell definierter Dienste über Regeln für adaptive Formulare.
  • Schreiben der übermittelten Formulardaten an die zugrunde liegenden Datenquellen.

Zusammenfassung: Die Arbeit mit der Datenintegration umfasst die folgenden Schritte:

  1. Konfigurieren von Datenquellen
  2. Erstellen eines Formulardatenmodells
  3. Testen der Datenmodellobjekte und Dienste im Formulardatenmodell
  4. Verwenden des Formulardatenmodells in Workflows mit adaptiven Formularen

Konfigurieren von Datenquellen

Die Datenintegration in Forms unterstützt die Konfiguration der folgenden Datenquellen:

  • Relationale Datenbanken: MySQL, Microsoft SQL Server, IBM DB2 und Oracle RDBMS
  • AEM-Benutzerprofil
  • RESTful Webservices
  • SOAP-basierte Webservices
  • OData-Dienstleistungen

RESTful-, SOAP-basierte und OData-Dienste werden in AEM-Cloud-Services, JDBC für relationale Datenbanken und der Connector für AEM-Profile dagegen in der AEM-Webkonsole konfiguriert.

Weitere Informationen zum Konfigurieren dieser Datenquellen finden Sie in den folgenden Abschnitten.

Konfigurieren relationaler Datenbanken

Sie können relationale Datenbanken mithilfe der AEM Web Console-Konfiguration konfigurieren. Führen Sie folgende Schritte aus:

  1. Wechseln Sie zur AEM-Webkonsole unter http://[Server]:[Host]/system/console/configMgr.

  2. Suchen Sie die Konfiguration Apache Sling Connection Pooled DataSource. Tippen Sie, um die Konfiguration im Bearbeitungsmodus zu öffnen.

  3. Geben Sie im Konfigurationsdialogfeld die Details für die Datenbank an, die Sie konfigurieren möchten, z. B.:

    • Name der Datenquelle
    • Datenquellendienst-Eigenschaft, in der der Name der Datenquelle gespeichert wird
    • Java-Klassenname für den JDBC-Treiber
    • JDBC-Verbindungs-URI
    • Benutzername und Kennwort zum Herstellen der Verbindung zum JDBC-Treiber

    Hinweis:

    Stellen Sie sicher, dass Sie vertrauliche Informationen wie Kennwörter verschlüsseln, bevor Sie die Datenquelle konfigurieren. Gehen Sie zum Verschlüsseln wie folgt vor:

    1. Wechseln Sie zu http://[Server]:[Port]/system/console/crypto.
    2. Geben Sie im Feld Plain Text das Kennwort bzw. die zu verschlüsselnde Zeichenfolge ein und klicken Sie auf Protect.

    Der verschlüsselte Text wird im Feld „Protected Text“ angezeigt, das Sie in der Konfiguration angeben können.

  4. Aktivieren Sie Test on Borrow oder Test on Return, um festzulegen, dass die Objekte vor der Entnahme oder bei der Rückgabe aus dem bzw. in den Pool validiert werden sollen.

  5. Geben Sie eine SQL SELECT-Abfrage in das Feld Validation Query ein, damit Verbindungen aus dem Pool validiert werden. Die Abfrage muss mindestens eine Zeile zurückgeben. Legen Sie die für Ihre Datenbank geeignete Option fest:

    • SELECT 1 (MySQL und MS SQL) 
    • SELECT 1 from dual (Oracle)
  6. Tippen Sie auf Speichern, um die Konfiguration zu speichern.

AEM-Benutzerprofil konfigurieren

Sie können das AEM-Benutzerprofil mithilfe der User Profile Connector-Konfiguration in der AEM-Webkonsole konfigurieren. Führen Sie folgende Schritte aus:

  1. Wechseln Sie zur AEM-Webkonsole unter http://[Server]:[Host]/system/console/configMgr.

  2. Suchen Sie nach AEM Forms Data Integrations - User Profile Connector Configuration und tippen Sie auf die Konfiguration, um sie im Bearbeitungsmodus zu öffnen.

  3. Im Dialogfeld für die Benutzerprofil-Connector-Konfiguration können Sie Benutzerprofileigenschaften hinzufügen, entfernen oder aktualisieren. Die angegebenen Eigenschaften sind zur Verwendung im Formulardatenmodell verfügbar. Verwenden Sie das folgende Format, um Benutzerprofileigenschaften festzulegen: 

    name=[Eigenschaftsname_mit_Speicherort_im_Benutzerprofil],type=[Eigenschaftstyp]

    Beispiele:

    • name=profile/phoneNumber,type=string
    • name=profile/empLocation/*/city,type=string

    Hinweis:

    Der Asterisk (*) im Beispiel oben steht für sämtliche Knoten unter dem Knoten profile/empLocation/ im AEM-Benutzerprofil in der CRXDE-Struktur. Das bedeutet, dass das Formulardatenmodell auf die Eigenschaft city mit dem Typ string in beliebigen Knoten unter dem Knoten profile/empLocation/ zugreifen kann. Die Knoten, die die angegebene Eigenschaft enthalten, müssen jedoch einer einheitlichen Struktur entsprechen.

  4. Tippen Sie auf Speichern, um die Konfiguration zu speichern.

RESTful-Webdienste konfigurieren

Der RESTful-Webdienst kann mithilfe von Swagger-Spezifikationen im JSON- oder YAML-Format in einer -Definitionsdatei beschrieben werden. Um den RESTful-Webdienst in den AEM-Cloud-Services zu konfigurieren, müssen Sie entweder über die Swagger-Datei auf Ihrem System oder über die URL verfügen, unter der die Datei gehostet wird.

Gehen Sie wie folgt vor, um RESTful-Dienste zu konfigurieren:

  1. Wechseln Sie zur Cloud-Service-Konfiguration unter http://[Server]:[Host]/libs/cq/core/content/tools/cloudservices.html und melden Sie sich mit Administratorberechtigungen an.

  2. Suchen Sie nach Formulardatenmodell unter Services von Dritten. Wenn Sie zum ersten Mal ein Formulardatenmodell konfigurieren, tippen Sie auf Jetzt konfigurieren. Tippen Sie andernfalls auf Konfigurationen anzeigen und dann auf das +-Symbol neben Verfügbare Konfigurationen, um eine weitere Konfiguration hinzuzufügen.

  3. Wählen Sie REST-Dienst, geben Sie einen Titel für die Konfiguration an und tippen Sie auf Erstellen. Das Dialogfeld REST-Dienst wird geöffnet.

  4. Gehen Sie im Dialogfeld REST-Dienst wie folgt vor:

    • (Optional) Geben Sie den Pfad zum Miniaturbild an, das auf der Konfigurationsseite für RESTful-Dienste angezeigt werden soll.
    • Wählen Sie die Swagger-Quelle, URL oder Datei aus und geben Sie dementsprechend die URL zur Swagger-Definitionsdatei an oder laden Sie die Swagger-Datei aus Ihrem lokalen Dateisystem hoch.
    • Wählen Sie den Authentifizierungstyp – Keine, OAuth2.0, Standardauthentifizierung, API-Schlüssel oder Benutzerdefinierte Authentifizierung für den Zugriff auf den RESTful-Dienst aus und geben Sie dementsprechend die Details für die Authentifizierung an.
  5. Tippen Sie auf OK, um die Konfiguration zu speichern.

SOAP-Webdienste konfigurieren

SOAP-basierte Webdienste werden mithilfe von WSDL-Spezifikationen (Web Services Description Language) beschrieben. Um den SOAP-basiertenWebdienst in den AEM-Cloud-Services zu konfigurieren, benötigen Sie die WSDL-URL für den Webdienst. Gehen Sie dann wie folgt vor:

  1. Wechseln Sie zur Cloud-Service-Konfiguration unter http://[Server]:[Host]/libs/cq/core/content/tools/cloudservices.html und melden Sie sich mit Administratorberechtigungen an.

  2. Suchen Sie nach Formulardatenmodell unter Services von Dritten. Wenn Sie zum ersten Mal ein Formulardatenmodell konfigurieren, tippen Sie auf Jetzt konfigurieren. Tippen Sie andernfalls auf Konfigurationen anzeigen und dann auf das +-Symbol neben Verfügbare Konfigurationen, um eine weitere Konfiguration hinzuzufügen.

  3. Wählen Sie SOAP Web Services Configuration, geben Sie einen Titel für die Konfiguration ein und klicken Sie auf Erstellen. Das Dialogfeld „SOAP-basierter Webdienst“ wird geöffnet.

  4. Gehen Sie im Das Dialogfeld „SOAP-basierter Webdienst“ wie folgt vor:

    • (Optional) Geben Sie den Pfad zum Miniaturbild an, das auf der Konfigurationsseite für die Dienste angezeigt werden soll.
    • Geben Sie die WSDL-URL für den Webdienst an.
    • Wählen Sie den Authentifizierungstyp – Keine, OAuth2.0, Standardauthentifizierung oder Benutzerdefinierte Authentifizierung – für den Zugriff auf den SOAP-Dienst aus und geben Sie dementsprechend die Details für die Authentifizierung an.
  5. Tippen Sie auf OK, um die Konfiguration zu speichern.

OData-Dienste konfigurieren

Ein OData-Dienst wird anhand seiner Dienststamm-URL identifiziert. Stellen Sie zum Konfigurieren eines OData-Dienstes in AEM-Cloud-Services sicher, dass Sie die Dienststamm-URL für den Service haben, und gehen Sie folgendermaßen vor:

  1. Wechseln Sie zur Cloud-Service-Konfiguration unter http://[Server]:[Host]/libs/cq/core/content/tools/cloudservices.html und melden Sie sich mit Administratorberechtigungen an.

  2. Suchen Sie nach Formulardatenmodell unter Services von Dritten. Wenn Sie zum ersten Mal ein Formulardatenmodell konfigurieren, tippen Sie auf Jetzt konfigurieren. Tippen Sie andernfalls auf Konfigurationen anzeigen und dann auf das +-Symbol neben Verfügbare Konfigurationen, um eine weitere Konfiguration hinzuzufügen.

  3. Wählen Sie OData-Dienst, geben Sie einen Titel für die Konfiguration an und tippen Sie auf Erstellen. Das Dialogfeld „OData-Dienst“ wird geöffnet.

  4. Gehen Sie im Dialogfeld „OData-Dienst“ wie folgt vor:

    • Geben Sie die Dienststamm-URL für den zu konfigurierenden OData-Dienst an.
    • Wählen Sie den Authentifizierungstyp – Keine, OAuth2.0, Standardauthentifizierung oder Benutzerdefinierte Authentifizierung – für den Zugriff auf den OData-Dienst aus und geben Sie dementsprechend die Details für die Authentifizierung an.
    • (Optional) Geben Sie den Pfad zum Miniaturbild an, das auf der Konfigurationsseite für den OData-Dienst angezeigt werden soll.

    Hinweis:

    Sie müssen den OAuth 2.0-Authentifizierungstyp auswählen, um eine Verbindung mit Microsoft Dynamics-Diensten herzustellen, die den Odata-Endpunkt als Dienststamm nutzen.

  5. Tippen Sie auf OK, um die Konfiguration zu speichern.

Formulardatenmodell erstellen

AEM Forms bietet eine intuitive Benutzeroberfläche zum Erstellen eines Formulardatenmodells aus konfigurierten Datenquellen. Führen Sie folgende Schritte aus, um ein Formulardatenmodell zu erstellen und den Editor für Formulardatenmodell zu starten.

  1. Navigieren Sie in der AEM-Authoring-Instanz zu Forms > Datenintegrationen.

  2. Tippen Sie auf Erstellen > Formulardatenmodell.

  3. Geben Sie im Dialogfeld „Formulardatenmodell erstellen“ einen Namen für das Formulardatenmodell ein und tippen Sie auf Weiter.

  4. Im Bildschirm Datenquelle auswählen werden alle konfigurierten Datenquellen angezeigt. Wählen Sie diejenigen aus, die Sie im Formulardatenmodell verwenden möchten, und tippen Sie auf Erstellen.

    Klicken Sie im Bestätigungsdialogfeld auf Öffnen, um den Editor für Formulardatenmodell zu starten.

Im Folgenden werden die verschiedenen Komponenten der Benutzeroberfläche im Editor für Formulardatenmodell beschrieben.

Editor für Formulardatenmodell
Formulardatenmodell mit drei Datenquellen: einem RESTful-Dienst, einem AEM-Benutzerprofil und eines RDBMS

A. Datenquellen

Liste aller Datenquellen, die Sie beim Erstellen des Formulardatenmodells ausgewählt haben. Durch Erweitern der einzelnen Datenquellen können Sie alle Datenmodellobjekte und Dienste in jeder Datenquelle anzeigen.

B. Ausgewählte Elemente hinzufügen

Fügt dem Formulardatenmodell ausgewählte Modellobjekte und Dienste hinzu.

C. Modell

Inhaltsbereich, in dem die hinzugefügten Datenmodellobjekte angezeigt werden.

D. Dienste

Inhaltsbereich, in dem die hinzugefügten Vorgänge oder Dienste für Datenmodellobjekte angezeigt werden.

Bereich, in dem Objekte und Entitäten zum Erstellen eines Modells hinzugefügt werden.
Bereich, in dem Objekte und Entitäten zum Erstellen eines Modells hinzugefügt werden.

Arbeiten mit Formulardatenmodellen

Nachdem Sie ein Formulardatenmodell erstellt und Datenquellen hinzugefügt haben, können Sie mit dem Formulardatenmodell-Editor Datenmodellobjekte und -dienste hinzufügen, ihre Eigenschaften konfigurieren, Verknüpfungen zwischen Datenmodellobjekten erstellen und das Formulardatenmodell und die Dienste testen.

Datenmodellobjekte und Dienste hinzufügen

Sie können Datenmodellobjekte und Dienste aus verfügbaren Datenquellen im Formulardatenmodell hinzufügen. Dabei werden hinzugefügte Datenmodellobjekte auf der Registerkarte „Modell“ und hinzugefügte Dienste auf der Registerkarte „Dienste“ angezeigt.

Datenmodellobjekte und Dienste hinzufügen

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

  2. Wählen Sie Datenmodellobjekte und Dienste aus, die Sie dem Formulardatenmodell hinzufügen möchten, und tippen Sie auf Ausgewählte hinzufügen.

    selected-objects
    Ausgewählte Datenmodellobjekte und Dienste

    Auf der Registerkarte „Modell“ wird eine grafische Darstellung aller Datenmodellobjekte und ihrer Eigenschaften angezeigt, die dem Formulardatenmodell hinzugefügt wurden. Jedes Datenmodellobjekt wird durch eine Box im Formulardatenmodell dargestellt.

    model-tab
    Registerkarte „Modell“ mit hinzugefügten Datenmodellobjekten

    Hinweis:

    Sie können die Datenmodellobjekt-Boxen durch Ziehen im Inhaltsbereich anordnen. Alle im Formulardatenmodell hinzugefügten Datenmodellobjekte werden im Bereich „Datenquellen“ ausgegraut.

    Auf der Registerkarte „Dienste“ wird eine Liste der hinzugefügten Dienste angezeigt.

    services-tab
    Registerkarte „Dienste“ mit Datenmodelldiensten

    Hinweis:

    Das OData-Dienst-Metadatendokument enthält außer den Datenmodellobjekten und Diensten Navigationseigenschaften, die die Verknüpfung zwischen zwei Datenmodellobjekten definieren. Wenn Sie eine OData-Dienst-Datenquelle zu einem Formulardatenmodell hinzufügen, steht im Formulardatenmodell ein Dienst für alle Navigationseigenschaften in einem Datenmodellobjekt zur Verfügung. Mithilfe dieses Dienstes können Sie die Navigationseigenschaften des entsprechenden Datenmodellobjekts lesen.

    Weitere Informationen finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Diensten.

  3. Tippen Sie auf Speichern, um das Formularmodellobjekt zu speichern.

    Hinweis:

    Sie können die auf der Registerkarte „Dienste“ eines Formulardatenmodells konfigurierten Dienste mithilfe von Regeln für adaptive Formulare aufrufen. Die konfigurierten Dienste sind in der Aktion zum Aufrufen von Diensten im Regeleditor verfügbar. Weitere Informationen zum Verwenden dieser Dienste in Regeln für adaptive Formulare finden Sie unter „Aufrufen von Diensten und Festlegen von Werten für Regeln“ unter Regeleditor.

Konfigurieren von Lese- und Schreibdiensten für Datenmodellobjekte

Um Daten für ein Datenmodellobjekt zu lesen und zu schreiben, gehen Sie folgendermaßen vor, um Lese- und Schreibdienste zu konfigurieren:

  1. Aktivieren Sie das Kontrollkästchen am oberen Rand eines Datenmodellobjekts, um es auszuwählen, und tippen Sie auf Eigenschaften bearbeiten.

    edit-properties
    Eigenschaften bearbeiten, um Lese- und Schreibdienste für Datenmodellobjekte zu konfigurieren

    Das Dialogfeld „Eigenschaften bearbeiten“ wird geöffnet.

    edit-properties-2
    Dialogfeld „Eigenschaften bearbeiten“

    Hinweis:

    Das OData-Dienst-Metadatendokument enthält außer den Datenmodellobjekten und Diensten Navigationseigenschaften, die die Verknüpfung zwischen zwei Datenmodellobjekten definieren. Wenn Sie eine OData-Dienst-Datenquelle zu einem Formulardatenmodell hinzufügen, steht im Formulardatenmodell ein Dienst für alle Navigationseigenschaften in einem Datenmodellobjekt zur Verfügung. Mithilfe dieses Dienstes können Sie die Navigationseigenschaften des entsprechenden Datenmodellobjekts lesen. 

    Weitere Informationen zur Verwendung des Dienstes finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Diensten.

  2. Durch Aktivieren oder Deaktivieren von Top Level Object legen Sie fest, ob das Datenmodellobjekt ein Modellobjekt der obersten Ebene ist.

    Datenmodellobjekte, die in einem Formulardatenmodell konfiguriert sind, stehen auf der Registerkarte „Datenmodellobjekte“ im Inhaltsbrowser adaptiver Formulare zur Verfügung, die auf dem Formulardatenmodell basieren. Wenn Sie eine Verknüpfung zwischen zwei Datenmodellobjekten hinzufügen, wird das Ziel-Datenmodellobjekt auf der Registerkarte Datenmodellobjekte unter dem Ausgangs-Datenmodellobjekt geschachtelt. Wenn das verschachtelte Datenmodell ein Objekt der obersten Ebene ist, wird es auch separat auf der Registerkarte „Datenmodellobjekte“ angezeigt. Daher werden zwei Einträge angezeigt, einer innerhalb und einer außerhalb der geschachtelten Hierarchie, was die Formularautoren verwirren könnte. Damit das zugeordnete Datenmodellobjekt nur in der verschachtelten Hierarchie angezeigt wird, deaktivieren Sie die Eigenschaft „Top Level Object“.     

  3. Wählen Sie Lese- und Schreibdienste für die ausgewählten Datenmodellobjekte aus. Die Argumente für die Dienste werden angezeigt.

    read-write-services
    Für die Mitarbeiterdatenquelle konfigurierte Lese- und Schreibdienste

  4. Tippen Sie auf  für das Argument für den Lesedienst, um dieses an ein Benutzerprofilattribut, Anforderungsattribut oder einen Literalwert zu binden, und geben Sie den Binding-Wert an. Er bindet das Dienstargument an das angegebene Bindungsattribut oder den angegebenen Literalwert, der an den Dienst als Argument übergeben wird, um mit dem angegebenen Wert verknüpfte Details aus der Datenquelle abzurufen.

    In diesem Beispiel nimmt das Argument id den Wert des Attributs empid des Benutzerprofils an und übergibt ihn als Argument an den Lesedienst. Dieser liest Werte aus zugeordneten Eigenschaften aus dem Datenmodellobjekt employee für die angegebene empid und gibt sie zurück. Wenn Sie beispielsweise im Feld empidim Formular den Wert „00250“ festlegen, liest der Lesedienst die Informationen zum Mitarbeiter mit der Mitarbeiter-ID „00250“. 

    Darüber hinaus können Sie ein Argument als obligatorisch oder optional definieren.

    Hinweis:

    Sie können Argumente für Lese- und Schreibdienste nur für JDBC-Datenquellen hinzufügen, bearbeiten oder löschen.

    edit-argument
    Binden des ID-Arguments an das empid-Attribut des AEM-Benutzerprofils

  5. Tippen Sie auf Fertig, um das Argument zu speichern, dann auf Fertig, um die Eigenschaften zu speichern, und schließlich auf Speichern, um das Formulardatenmodell zu speichern.

Verknüpfungen hinzufügen

In der Regel werden Verknüpfungen zwischen Datenmodellobjekten in einer Datenquelle erstellt. Dies können Eins-zu-Eins- oder Eins-zu-Viele-Verknüpfungen sein. So könnten mehrere Angehörige mit einem Mitarbeiter verknüpft sein. Dies wird als Eins-zu-Viele-Verknüpfung bezeichnet und in der Form 1:n auf der Linie dargestellt, die die zugeordneten Datenmodellobjekte verbindet. Wenn jedoch eine Verknüpfung einen eindeutigen Mitarbeiternamen für eine gegebene Mitarbeiter-ID zurückgibt, wird dies als Eins-zu-Eins-Verknüpfung bezeichnet.

Wenn Sie zugeordnete Datenmodellobjekte in einer Datenquelle einem Formulardatenmodell hinzufügen, werden ihre Verknüpfungen beibehalten und als durch Pfeillinien verbunden angezeigt. Sie können Verknüpfungen zwischen Datenmodellobjekten über unterschiedliche Datenquellen in einem Formulardatenmodell hinzufügen.

Hinweis:

Vordefinierte Verknüpfungen in einer JDBC-Datenquelle werden nicht im Formulardatenmodell beibehalten. Sie müssen sie manuell erstellen.

So fügen Sie eine Verknüpfung hinzu:

  1. Aktivieren Sie das Kontrollkästchen oben in einem Datenmodellobjekt, um dieses auszuwählen, und tippen Sie auf Verknüpfung hinzufügen. Das Dialogfeld „Verknüpfung hinzufügen“ wird geöffnet.

    add-association

    Hinweis:

    Das OData-Dienst-Metadatendokument enthält außer den Datenmodellobjekten und Diensten Navigationseigenschaften, die die Verknüpfung zwischen zwei Datenmodellobjekten definieren. Sie können diese Navigationsfunktionen verwenden, wenn Sie Verknüpfungen im Formulardatenmodell hinzufügen. Weitere Informationen finden Sie unter Arbeiten mit Navigationseigenschaften von OData-Diensten.

    Das Dialogfeld „Verknüpfung hinzufügen“ wird geöffnet.

    add-association-2
    Dialogfeld „Verknüpfung hinzufügen“

  2. Im Bereich „Verknüpfung hinzufügen“:

    • Geben Sie einen Titel für die Verknüpfung an.
    • Wählen Sie den Verknüpfungstyp: 1:1 oder 1:n.
    • Wählen Sie das Datenmodellobjekt aus, zu dem Sie die Verknüpfung erstellen möchten.
    • Wählen Sie den Lesedienst, der die Daten aus dem ausgewählten Modellobjekt lesen soll. Das Argument für den Lesedienst wird angezeigt. Bearbeiten Sie das Argument gegebenenfalls mit den nötigen Änderungen, und binden Sie es an die Eigenschaft des zu verknüpfenden Datenmodellobjekts.

    Im folgenden Beispiel ist dependentiddas Standardargument für den Lesedienst des Datenmodellobjekts „Angehörige“.

    add-association-example
    Standardargument für den Lesedienst für „Angehörige“ ist „dependentid“

    Das Argument muss allerdings eine mit dem verknüpfenden Datenmodellobjekt gemeinsame Eigenschaft sein, in diesem Beispiel Employeeid. Daher muss das Argument Employeeid an die Eigenschaft id des Mitarbeiter-Datenmodellobjekts gebunden werden, damit die verknüpften Informationen zu Angehörigen aus dem Datenmodellobjekt für Angehörige abgerufen werden können.

    add-association-example-2
    Aktualisiertes Argument und Bindung

    Tippen Sie auf Fertig, um das Argument zu speichern.

  3. Tippen Sie auf Fertig, um die Verknüpfung zu speichern, und dann auf Speichern, um das Formulardatenmodell zu speichern.

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

Hinweis:

Die hinzugefügte Verknüpfung wird der Box für das Datenmodellobjekt mit dem angegebenen Titel und einer Linie angezeigt, die die verknüpften Datenmodellobjekte verbindet.

Sie können eine Verknüpfung zu bearbeiten, indem Sie das Kontrollkästchen neben der Verknüpfung auswählen und auf Verknüpfung bearbeiten klicken.

Datenmodellobjektverknüpfung bearbeiten

Eigenschaften bearbeiten

Sie können Eigenschaften von Datenmodellobjekten, Eigenschaften sowie m Formulardatenmodell hinzugefügte Dienste bearbeiten.

Eigenschaften bearbeiten

  1. Aktivieren Sie im Formulardatenmodell das Kontrollkästchen neben einem Datenmodellobjekt, einer Eigenschaft oder einem Dienst.

  2. Tippen Sie auf Eigenschaften bearbeiten. Der Bereich Eigenschaften bearbeiten für das ausgewählte Modellobjekt, die Eigenschaft oder den Dienst wird geöffnet.

    • Datenmodellobjekt: Geben Sie die Lese- und Schreibdienste an und bearbeiten Sie Argumente.
    • Eigenschaft: Geben Sie den Typ, den Untertyp und das Format für die Eigenschaft an. Sie können außerdem angeben, ob die ausgewählte Eigenschaft der Primärschlüssel für das Datenmodellobjekt ist.
    • Dienst: Geben Sie das Eingabemodellobjekt, den Ausgabetyp und Argumente für den Dienst an. Bei einem Get-Dienst können Sie angeben, ob ein Array als Rückgabe erwartet wird.

     

    edit-properties-service
    Dialogfeld „Eigenschaften bearbeiten“ für einen Get-Dienst

  3. Tippen Sie auf Fertig, um die Eigenschaften zu speichern, und dann auf Speichern, um das Formulardatenmodell zu speichern.

Formulardatenmodell mit Änderungen an der Datenquelle aktualisieren

Wenn Sie Datenmodellobjekte oder Dienste in einer Datenquelle ändern oder aktualisieren, werden die Aktualisierungen nicht automatisch in das zugehörige Formulardatenmodell übernommen.

Sie müssen den Cache für ungültig erklären, damit die Aktualisierungen in das Formulardatenmodell übernommen werden.

JDBC-Datenquelle

  1. Wechseln Sie in der AEM-Authoring-Instanz zu http://[Server]:[Port]/system/console/bundles.

  2. Suchen Sie nach dem Bundle AEM Forms Dermis Core (aem-dermis-core) und klicken Sie darauf, um es zu öffnen.

  3. Stoppen und starten Sie das Bundle, um den Cache ungültig zu machen.

RESTful-, SOAP-basierte und OData-Dienste

  1. Wechseln Sie in der AEM-Authoring-Instanz zu Extras > Bereitstellung > Cloud-Services.

  2. Klicken Sie unter „Formulardatenmodell“ auf Konfigurationen anzeigen. Alle konfigurierten Cloud-Dienste werden aufgeführt.

  3. Klicken Sie, um den Cloud-Dienst für die aktualisierte Datenquelle zu öffnen.

  4. Speichern Sie die Cloud-Dienst-Konfiguration.

Datenmodellobjekte und Dienste testen

Ihr Formulardatenmodell ist konfiguriert. Bevor Sie es verwenden, sollten Sie jedoch testen, ob die konfigurierten Datenmodellobjekte und Dienste erwartungsgemäß funktionieren. Datenmodellobjekte und Dienste testen

  1. Wählen Sie ein Datenmodellobjekt oder einen Dienst im Formulardatenmodell aus und tippen Sie auf Testmodell-Objekt bzw. Test-Dienst.

    Das Fenster „Formulardatenmodell testen“ wird geöffnet.

    test-data-model
  2. Wählen Sie im Fenster „Formulardatenmodell testen“ unter „Eingabe“ das zu testende Datenmodellobjekt bzw. den Dienst.

  3. Geben Sie den Wert des Arguments in den Testcode ein und tippen Sie auf Testen. Ist der Test erfolgreich, wird die Ausgabe im Bereich „Ausgabe“ angezeigt.

    test-data-model-2

Auf ähnliche Weise können Sie andere Datenmodellobjekte und Dienste im Formulardatenmodell testen.

Formulardatenmodell in Anwendungsfällen für adaptive Formulare verwenden

Ein Formulardatenmodell ist eine Erweiterung des JSON-Schemas, die Sie wie folgt verwenden können:

  • Erstellen adaptiver Formulare und Fragmente
  • Vorausfüllen adaptiver Formulare
  • Schreiben von Formulardaten in Datenquellen bei Übermittlung des Formulars
  • Aufrufen von Diensten über Regeln für adaptive Formulare

Adaptive Formulare und Fragmente erstellen

Sie können adaptive Formulare und adaptive Formularfragmente anhand des Formulardatenmodells erstellen. Gehen Sie wie folgt vor, um ein Formulardatenmodell beim Erstellen eines adaptiven Formulars oder eines adaptiven Formularfragments zu verwenden:

  1. Wählen Sie auf der Registerkarte „Formularmodell“ im Bildschirm „Eigenschaften hinzufügen“ Formulardatenmodell aus der Dropdownliste Auswählen aus.

    create-af-1
  2. Tippen Sie auf Formulardatenmodell auswählen, um es zu erweitern. Alle verfügbaren Formulardatenmodelle werden aufgelistet.

    Wählen Sie ein Formulardatenmodell aus.

    create-af-2
  3. (Nur adaptive Formularfragmente) Sie können ein adaptives Formularfragment nur auf Basis eines einzelnen Datenmodellobjekts in einem Formulardatenmodell erstellen. Erweitern Sie die Dropdownliste Definitionen für Formulardatenmodell. Hier sind sämtliche Datenmodellobjekte im angegebenen Formulardatenmodell aufgelistet. Wählen Sie ein Datenmodellobjekt aus der Liste aus.

    create-af-3

Sobald das auf einem Formulardatenmodell basierende adaptive Formular oder Formularfragment erstellt ist, werden Formulardatenobjekte auf der Registerkarte Datenmodellobjekte des Inhaltsbrowsers im Editor für adaptive Formulare angezeigt.

Hinweis:

Für adaptive Formularfragmente werden nur das beim Authoring gewählte Datenmodellobjekt und die mit diesem verknüpften Datenmodellobjekte auf der Registerkarte „Datenmodellobjekte“ angezeigt.

data-model-objects-tab

Indem Sie Datenmodellobjekte in das adaptive Formular oder Fragment ziehen und dort ablegen, können Sie Formularfelder hinzufügen. Für die hinzugefügten Formularfelder bleiben die Metadateneigenschaften und die Bindung der Datenmodellobjekte erhalten. Die Bindung stellt sicher, dass die Feldwerte in den entsprechenden Datenquellen bei der Formularübermittlung aktualisiert und bei der Ausgabe des Formulars vorausgefüllt werden.

Vorausfüllen adaptiver Formulare

AEM Forms bietet einen sofort nutzbaren Vorbefüllungs-Dienst für Formulardatenmodelle, den Sie für adaptive Formulare auf Basis eines Formulardatenmodells aktivieren können. Der Vorbefüllungs-Dienst fragt Datenmodellobjekte im adaptiven Formular in den Datenquellen ab und füllt die Werte in den Feldern bei der Ausgabe des Formulars im Voraus aus.

Um den Vorbefüllungs-Dienst für ein adaptives Formular zu aktivieren, öffnen Sie die Eigenschaften des Containers für ein adaptives Formular und wählen Sie Vorbefüllungs-Dienst für Formulardatenmodell aus der Dropdownliste Vorbefüllungs-Dienst im Accordion „Standard“. Speichern Sie anschließend die Eigenschaften.

prefill-service

Übermittelte Formulardaten in Datenquellen schreiben

Sie können ein auf einem Formulardatenmodell basierendes Formular so konfigurieren, dass die vom Benutzer im Formular übermittelten Daten für ein Datenmodellobjekt bei der Übermittlung in dessen Datenquellen geschrieben werden. Zu diesem Zweck steht in AEM Forms die Übermittlungsaktion für Formulardatenmodelle zur Verfügung. Standardmäßig ist sie nur für adaptive Formulare verfügbar, die auf einem Formulardatenmodell basieren. Diese Aktion schreibt die übermittelten Daten für ein Datenmodellobjekt in dessen Datenquelle.

Um die Übermittlungsaktion für Formulardatenmodelle zu konfigurieren, öffnen Sie die Eigenschaften des Container für das adaptive Formular und wählen Sie Senden mit Formulardatenmodell aus der Dropdownliste „Übermittlungsaktion“ im Accordion „Übermittlung“. Suchen Sie dann das gewünschte Datenmodellobjekt in der Dropdownliste Name des zu übermittelnden Modellobjekts und wählen Sie es aus. Speichern Sie die Eigenschaften.

Bei Übermitteln des Formulars werden die Daten für das konfigurierte Datenmodellobjekt in die entsprechende Datenquelle geschrieben. 

data-submission

Mithilfe der Objekteigenschaft „Binärdatenmodell“ können Sie auch Formularanhänge an eine Datenquelle senden. Gehen Sie wie folgt vor, um Anhänge an eine JDBC-Datenquelle zu senden:

  1. Fügen Sie dem Formulardatenmodell ein Datenmodellobjekt hinzu, das eine binäre Eigenschaft enthält.

  2. Ziehen Sie im adaptiven Formular die Komponente Dateianhang aus dem Komponentenbrowser in das adaptive Formular und legen Sie sie dort ab.

  3. Tippen Sie auf die hinzugefügte Komponente, um sie auszuwählen, und tippen Sie dann auf , um den  Eigenschaftenbrowser für die Komponente zu öffnen.

  4. Tippen Sie im Feld „Bindungsverweis“ auf , navigieren Sie zu der binären Eigenschaft, die Sie im Formulardatenmodell hinzugefügt haben, und wählen Sie sie aus. Konfigurieren Sie weitere Eigenschaften entsprechend.

    Tippen Sie auf , um die Eigenschaften zu speichern. Damit ist das Anhangsfeld an die binäre Eigenschaft des Formulardatenmodells gebunden.

  5. Aktivieren Sie im Abschnitt „Übermittlung“ der Eigenschaften des Containers für das adaptive Formular die Option Formularanhänge einreichen. Dadurch wird der Anhang im Feld der binären Eigenschaft bei der Übermittlung des Formulars an die Datenquelle gesendet.

Datenmodelldienste mithilfe von Regeln aufrufen

In einem auf einem Formulardatenmodell basierenden adaptiven Formular können Sie Regeln erstellen , um die im Formulardatenmodell konfigurierten Dienste aufzurufen. Für die Operation Dienste aufrufen werden alle verfügbaren Dienste im Formulardatenmodell aufgelistet und Sie können die Eingabe- und Ausgabefelder für den Dienst wählen. Sie können außerdem mit dem Regeltyp Wert festlegen einen Formulardatenmodelldienst aufrufen und die vom Dienst zurückgegebene Ausgabe als Wert eines Feldes einstellen.

Beispielsweise ruft die folgende Regel einen Get-Dienst auf, für den die Mitarbeiter-ID als Eingabe angegeben werden muss und der die entsprechenden Werte in den Feldern für die Angehörigen-ID, den Nachnamen, den Vornamen und das Geschlecht zurückgibt.

invoke-service

Darüber hinaus können Sie mithilfe der guidelib.dataIntegrationUtils.executeOperation-API ein JavaScript im Codeeditor für den Regel-Editor schreiben. Informationen zur API finden Sie unter API zum Aufrufen des Formulardatenmodelldienstes.

In OData-Diensten werden Navigationseigenschaften verwendet, um Zuordnungen zwischen zwei Datenmodellobjekten zu definieren. Diese Eigenschaften werden für einen Entitätstyp oder einen komplexen Typ definiert. So enthält beispielsweise im folgenden Auszug aus der Metadatendatei der TripPin OData-Beispieldienste die Entität „person“ drei Navigationseigenschaften: „Friends“, „BestFriend“ und „Trips“.

Weitere Informationen finden Sie in der OData-Dokumentation.

<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
<script/>
<edmx:DataServices>
<Schema xmlns="http://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>

Wenn Sie einen OData-Dienst in einem Formulardatenmodell konfigurieren, werden alle Navigationseigenschaften in einem Entitätencontainer über einen Dienst im Formulardatenmodell bereitgestellt. In diesem Beispiel können im OData-Dienst „TripPin“ die drei Navigationseigenschaften des Entitätencontainers Person über ein und denselben GET LINK-Dienst im Formulardatenmodell gelesen werden. 

Im Folgenden wird der DienstGET LINK für Person/Peopleim Formulardatenmodell gezeigt. Dies ist ein kombinierter Dienst für die drei Navigationseigenschaften in der Entität Person des OData-Dienstes „TripPin“. 

nav-prop-service

Sobald Sie den GET LINK-Dienst auf der Registerkarte „Dienste“ im Formulardatenmodell hinzufügen, können Sie die Eigenschaften bearbeiten, um das Modellobjekt für die Ausgabe und die im Dienst zu verwendende Navigationseigenschaft zu wählen. Im folgenden Beispiel nutzt der Dienst GET LINK für Person/People die Angabe Trip als Ausgabemodellobjekt und die Navigationseigenschaft als Trips.

edit-prop-nav-prop

Hinweis:

Die im Feld Standardwert des Arguments NavigationPropertyName verfügbaren Werte hängen vom Status des Umschalters Rücksende-Array?ab. Wenn diese Funktion aktiviert ist, zeigt sie Navigationsfunktionen des Typs Sammlung an.

In diesem Beispiel können Sie auch als Ausgabemodellobjekt Person und als Argument für die Navigationseigenschaft Friends oder BestFriend wählen (abhängig davon, ob Rücksende-Array? aktiviert oder deaktiviert ist).

edit-prop-nav-prop2

Darüber hinaus können Sie beim Hinzufügen von Verknüpfungen im Formulardatenmodell einen GET LINK-Dienst wählen und seine Navigationseigenschaften konfigurieren. Damit eine Navigationseigenschaft gewählt werden kann, müssen Sie jedoch darauf achten, dass im Feld Bindung an der Wert Literaleingestellt ist.

add-association-nav-prop

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie