Sie sehen sich Hilfeinhalte der folgenden Version an:

Erstellen Sie ein Formulardatenmodell für interaktive Kommunikation

Dieses Tutorial ist ein Schritt in der Reihe Erstellen Sie Ihre erste interaktive Kommunikation. Es wird empfohlen, der Serie in chronologischer Reihenfolge zu folgen, um den vollständigen Anwendungsfall zu verstehen, auszuführen und zu demonstrieren.

Über die Schulung

Mit dem AEM Forms-Datenintegrationsmodul können Sie ein Formulardatenmodell aus verschiedenen Backend-Datenquellen wie AEM-Benutzerprofil, RESTful-Webdiensten, SOAP-basierten Webdiensten, OData-Diensten und relationalen Datenbanken erstellen. Sie können Datenmodellobjekte und -Dienste in einem Formulardatenmodell konfigurieren und einem adaptiven Formular zuordnen. Adaptive Formularfelder sind an Datenmodellobjekteigenschaften gebunden. Mit den Diensten können Sie das adaptive Formular vorab befüllen und gesendete Formulardaten zurück an das Datenmodellobjekt schreiben.

Weitere Informationen zum Formulardatenmodell und zur Formulardatenintegration finden Sie unter Datenintegration für AEM Forms.

Dieses Tutorial führt Sie durch die Schritte zum Vorbereiten, Erstellen, Konfigurieren und Zuordnen eines Formulardatenmodells mit einem adaptiven Formular. Am Ende dieser Schulung können Sie Folgendes:

Das Formulardatenmodell sieht etwa wie folgt aus:

form_data_model_callouts
A. Konfigurierte Datenquellen B. Datenquellenschemata C. Verfügbare Dienste D. Datenmodellobjekte E. Konfigurierte Dienste 

Voraussetzungen

Bevor Sie beginnen, stellen Sie Folgendes sicher:

Schritt 1: Richten Sie die Datenbank ein

Eine Datenbank ist für die Erstellung einer interaktiven Kommunikation unerlässlich. In diesem Tutorial wird eine Datenbank zur Demonstration der Formulardatenmodell- und Persistenzfunktionen von AEM Forms verwendet.Richten Sie eine Datenbank ein, die Kunden-, Rechnungs- und Anruftabellen enthält.
Die folgende Abbildung zeigt Beispieldaten für die Kundentabelle:

sample_data_cust

Die Anrufliste enthält die Anrufdetails, wie z. B. Anrufdatum, Anrufzeit, Anrufnummer, Anrufdauer und Gebühren. Die Kundentabelle ist über das Feld „Mobilfunknummer (mobilenum)“ mit der Anruftabelle verknüpft. Für jede in der Kundentabelle aufgeführte Mobilfunknummer gibt es mehrere Datensätze in der Anruftabelle. Sie können beispielsweise die Anrufdetails für die Mobilfunknummer 1457892541 abrufen, indem Sie sich auf die Anruftabelle beziehen. 

Die Rechnungstabelle enthält die Rechnungsdetails wie Rechnungsdatum, Rechnungszeitraum, Monatsgebühren und Verbindungskosten. Die Kundentabelle ist mit der Rechnungstabelle über das Feld „Rechnungsplan“ verknüpft. In der Kundentabelle ist jedem Kunden ein Plan zugeordnet. Die Rechnungstabelle enthält die Preisangaben für alle vorhandenen Pläne. Sie können beispielsweise die Plandetails für Sarah aus der Kundentabelle abrufen und diese Details verwenden, um Preisdetails aus der Rechnungstabelle abzurufen.

Schritt 2: Konfigurieren der MySQL-Datenbank als Datenquelle

Sie können verschiedene Arten von Datenquellen konfigurieren, um ein Formulardatenmodell zu erstellen. Für dieses Tutorial werden wir die MySQL-Datenbank, die Sie konfiguriert und mit Beispieldaten befüllt haben, konfigurieren. Informationen zu anderen unterstützten Datenquellen und deren Konfiguration finden Sie unter AEM Forms-Datenintegration.

Gehen Sie folgendermaßen vor, um Ihre MySQL-Datenbank zu konfigurieren:

  1. Installieren Sie den JDBC-Treiber für die MySQL-Datenbank als OSGi-Paket:

    1. Melden Sie sich bei der AEM Forms-Autoreninstanz als Administrator an und wechseln Sie zu den AEM-Webkonsolen-Paketen. Die Standard-URL lautet http://localhost:4502/system/console/bundles.
    2. Tippen Sie auf Installieren/Aktualisieren. Ein Dialogfeld Pakete hochladen/installieren wird angezeigt.
    3. Tippen Sie auf Datei auswählen, um das OSGi-Paket für den MySQL-JDBC-Treiber auszuwählen. Select Paket starten und Pakete aktualisieren und tippen Sie auf Installieren oder Aktualisieren. Stellen Sie sicher, dass der JDBC-Treiber der Oracle Corporation für MySQL aktiv ist. Der Treiber wird installiert.
  2. Konfigurieren der MySQL-Datenbank als Datenquelle:

    1. Wechseln zur AEM-Webkonsole unter http://localhost:4502/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 Konfigurationsdialog die folgenden Details an:
      • Datenquellenname: Sie können einen beliebigen Namen angeben. Geben Sie beispielsweise MySQLan.
      • Name der DataSource-Diensteigenschaft : Geben Sie den Namen der Diensteigenschaft an, die den DataSource-Namen enthält. Er wird beim Registrieren der Datenquelleninstanz als OSGi-Dienst angegeben. Zum Beispiel: datasource.name.
      • JDBC-Treiberklasse: Geben Sie den Java-Klassennamen des JDBC-Treibers an. Geben Sie für die MySQL-Datenbank com.mysql.jdbc.Driver an. 
      • JDBC-Verbindungs-URI: Geben Sie die Verbindungs-URL der Datenbank an. Für MySQL-Datenbanken, die auf Port 3306 und Schema-Teleca ausgeführt werden, lautet die URL: jdbc:mysql://[server]:3306/teleca?autoReconnect=true&useUnicode=true&characterEncoding=utf-8
      • Benutzername: Benutzername der Datenbank. Es ist erforderlich, den JDBC-Treiber zu aktivieren, um eine Verbindung mit der Datenbank herzustellen.
      • Kennwort: Kennwort für die Datenbank. Es ist erforderlich, den JDBC-Treiber zu aktivieren, um eine Verbindung mit der Datenbank herzustellen.
      • Test beim Ausleihen: Aktivieren Sie die Option Test beim Ausleihen
      • Test beim Zurückgeben:Aktivieren Sie die Option Test beim Zurückgeben.
      • Validierungsabfrage: Geben Sie eine SQL SELECT-Abfrage ein, damit Verbindungen aus dem Pool validiert werden. Die Abfrage muss mindestens eine Zeile zurückgeben. Beispiel: Wählen Sie * aus den Kundendaten.
      • Transaktions-Isolierung: Setzen Sie den Wert auf READ_COMMITTED.

    Lassen Sie Standardwerte für andere Eigenschaften und tippen Sie auf Speichern.

    Eine Konfiguration ähnlich der folgenden wird erstellt.

    apache_configuration

Schritt 3: Erstellen eines Formulardatenmodells

AEM Forms bietet eine intuitive Benutzeroberfläche zum Erstellen eines Formulardatenmodells aus konfigurierten Datenquellen. Sie können mehrere Datenquellen in einem Formulardatenmodell verwenden. Für den Anwendungsfall in diesem Tutorial verwenden Sie MySQL als Datenquelle.

Gehen Sie folgendermaßen vor, um ein Formulardatenmodell zu erstellen:

  1. Navigieren Sie in der AEM-Authoring-Instanz zu FormulareDatenintegration.

  2. Tippen Sie auf ErstellenFormulardatenmodell.

  3. Geben Sie im Dialogfeld „Formulardatenmodell erstellen“ einen Namen für das Formulardatenmodell ein. Beispiel: FDM_Create_First_IC. Tippen Sie auf Weiter.

  4. Im Bildschirm „Datenquelle auswählen“ werden alle konfigurierten Datenquellen angezeigt. Wählen Sie die Datenquelle MySQL und tippen Sie auf Erstellen.

    fdm_mysql_data_source
  5. Klicken Sie auf Fertig.Das Formulardatenmodell FDM_Create_First_IC wird erstellt.

Schritt 4: Konfigurieren eines Formulardatenmodells

Datenmodellobjekte und Dienste hinzufügen

  1. Navigieren Sie auf dem AEM-Server zu Formulare > Datenintegrationen. Die Standard-URL lautet http://localhost:4502/aem/forms.html/content/dam/formsanddocuments-fdm.

  2. Das Formulardatenmodell FDM_Create_First_IC, dass Sie zuvor erstellt haben, ist hier aufgeführt. Wählen Sie es aus und tippen Sie auf Bearbeiten.

    Die ausgewählte Datenquelle MySQL wird im Bereich Datenquellen angezeigt.

    mysql_fdm
  3. Erweitern Sie die Datenquellstruktur MySQL. Wählen Sie die folgenden Datenmodellobjekte und -dienste aus dem Schema teleca aus:

    • Datenmodellobjekte:  
      • Rechnungen
      • abrufe
      • Kunde
    • Dienste:
      • get
      • update

    Tippen Sie auf Ausgewählte hinzufügen, um dem Formulardatenmodell ausgewählte Datenmodellobjekte und Dienste hinzuzufügen.

    select_data_model_objs_services

    Die Rechnungen, Anrufe und Kundendatenmodellobjekte werden im rechten Bereich auf der Registerkarte Modell angezeigt. Die Abruf- und Aktualisierungsdienste werden auf der Registerkarte Dienste angezeigt.

    data_model_objects

Erstellen Sie berechnete untergeordnete Eigenschaften für das Datenmodellobjekt

Eine berechnete Eigenschaft ist diejenige, deren Wert basierend auf einer Regel oder einem Ausdruck berechnet wird. Mithilfe einer Regel können Sie den Wert einer berechneten Eigenschaft auf eine Literalzeichenfolge, eine Zahl, das Ergebnis eines mathematischen Ausdrucks oder den Wert einer anderen Eigenschaft im Formulardatenmodell festlegen.

Basierend auf dem Anwendungsfall, erstellen Sie die untergeordnete berechnete Eigenschaft usagecharges im Datenmodellobjekt Rechnungen mit folgendem mathematischem Ausdruck:

  • Nutzungsgebühren = Gesprächsgebühren + Gebühren für Telefonkonferenzen + SMS-Gebühren + mobile Internet-Gebühren + Nationale und internationale Roaming-Gebühren + VAS (all diese Eigenschaften existieren im Datenmodellobjekt „Rechnungen“)
    Weitere Informationen zur untergeordneten berechneten Eigenschaft usagecharges finden Sie unter Interaktive Kommunikation planen.

Führen Sie die folgenden Schritte durch, um untergeordnete berechnete Eigenschaften für das Datenmodellobjekt „Rechnungen“ zu erstellen:

  1. Aktivieren Sie das Kontrollkästchen oben in einem Datenmodellobjekt Rechnungen, um dieses auszuwählen, und tippen Sie auf Untergeordnete Eigenschaften erstellen.

  2. Im Bereich Untergeordnete Eigenschaft erstellen:

    1. Geben Sie als Namen der untergeordneten Eigenschaft usagecharges ein.
    2. Aktivieren Sie Berechnete.
    3. Wählen Sie als Typ Float und tippen Sie auf Fertig, um die untergeordnete Eigenschaft zum Datenmodellobjekt Rechnungen hinzuzufügen.
    create_child_property_float
  3. Tippen Sie auf Regel bearbeiten, um den Regeleditor zu öffnen.

  4. Tippen Sie auf Erstellen. Ein Regelfenster Wert festlegen wird geöffnet.

  5. Wählen Sie in der Dropdown-Liste „Option auswählen“ Mathematischer Ausdruck.

    usage_charges_rule_editor
  6. Wählen Sie im mathematischen Ausdruck callcharges und confcallcharges als erstes bzw. zweites Objekt aus. Wählen Sie plus als Operator. Tippen Sie innerhalb des mathematischen Ausdrucks auf Ausdruck erweitern, um die Objekte smscharges, internetcharges, roamingnational, roamingintnl und vas hinzuzufügen.

    Das folgende Bild zeigt den mathematischen Ausdruck im Regeleditor:

    usage_charges_rule_all
  7. Tippen Sie auf Fertig .Die Regel wird im Regeleditor erstellt.

  8. Tippen Sie auf Fertig, um das Fenster „Regeleditor“ zu schließen.

Hinzufügen von Assoziationen zwischen Datenmodellobjekten

Nachdem die Datenmodellobjekte definiert wurden, können Sie Verknüpfungen zwischen ihnen erstellen. Dies können Eins-zu-Eins- oder 1:n-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.

Erstellen Sie basierend auf dem Anwendungsfall die folgenden Verknüpfungen zwischen den Datenmodellobjekten:

Verknüpfungen Datenmodellobjekte
1:n Kunde:Anrufe (in einer monatlichen Rechnung können einem Kunden mehrere Anrufe zugeordnet werden)
1:1 Kunde:Rechnungen (Eine Rechnung ist einem Kunden für einen bestimmten Monat zugeordnet.)

Führen Sie die folgenden Schritte aus, um Verknüpfungen zwischen Datenmodellobjekten zu erstellen:

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

  2. Im Bereich Verknüpfung hinzufügen:

    • Geben Sie einen Titel für die Verknüpfung an. Dies ist ein optionales Feld.
    • Wählen Sie 1:n aus der Typ Dropdown-Liste.
    • Wählen Sie Anrufe aus der Dropdown-Liste Modellobjekt.
    • Wählen Sie get aus der Dropdown-Liste Service.
    • Tippen Sie auf Hinzufügen, um das Datenmodellobjekt customer mit dem Datenmodellobjekt calls mithilfe einer Eigenschaft zu verknüpfen. Basierend auf dem Anwendungsfall muss das Datenmodellobjekt „call“ mit der Eigenschaft der Mobilfunknummer im Datenmodellobjekt „customer“ verknüpft sein. Das Dialogfeld Argument hinzufügen wird geöffnet.
    add_association
  3. Im Dialogfeld Argument hinzufügen:

    • Wählen Sie mobilenum aus der Dropdown-Liste Name aus . Die Mobilfunknummer ist eine allgemeine Eigenschaft, die in Datenmodellobjekten „customer“ und „calls“ verfügbar ist. Infolgedessen wird eine Verbindung zwischen Datenmodellobjekten „customer“ und „calls“ erstellt.
      Für jede im Datenmodellobjekt „customer“ verfügbare Mobilfunknummer stehen mehrere „call“-Datensätze in der Anruftabelle zur Verfügung.
    • Geben Sie einen optionalen Titel und eine Beschreibung für das Argument an.
    • Wählen Sie customer aus der Dropdown-Liste Bindung an aus.
    • Wählen Sie mobilenum aus der Dropdown-Liste Bindungswert aus.
    • Tippen Sie auf Hinzufügen.
    add_association_argument

    Die Eigenschaft „mobilenum“ wird im Abschnitt Argumente angezeigt.

    add_argument_association
  4. Tippen Sie auf Fertig, um eine 1:n-Verknüpfung zwischen Datenmodellobjekten „customer“ und „calls“ zu erstellen.

    Nachdem Sie eine Zuordnung zwischen Kunden- und Anrufdatenmodellobjekten erstellt haben, erstellen Sie eine 1:1-Verknüpfung zwischen den Datenmodellobjekten „customer“ und „bills“.

  5. Aktivieren Sie das Kontrollkästchen oben in einem Datenmodellobjekt customer, um dieses auszuwählen, und tippen Sie auf Verknüpfung hinzufügen. Der Eigenschaftsbereich Verknüpfung hinzufügen wird geöffnet.

  6. Im Bereich Verknüpfung hinzufügen:

    • Geben Sie einen Titel für die Verknüpfung an. Dies ist ein optionales Feld.
    • Wählen Sie 1:1 aus der Dropdown-Liste Typ.
    • Wählen Sie bills aus der Dropdown-Liste Modellobjekt.
    • Wählen Sie get aus der Dropdown-Liste Service. Die Eigenschaft billplan die den Primärschlüssel für die Rehnungstabelle darstellt, ist bereits im Abschnitt Argumente verfügbar .
      Die Datenmodellobjekte „bills“ und „customer“ werden jeweils mit den Eigenschaften „billplan“ (Rechnungen und „customerplan“ (Kunde) verknüpft. Erstellen Sie eine Bindung zwischen diesen Eigenschaften, um die Plandetails für jeden in der MySQL-Datenbank verfügbaren Kunden abzurufen.
    • Wählen Sie customer aus der Dropdown-Liste Bindung an aus.
    • Wählen Sie customerplan aus der Dropdown-Liste Bindungswert.
    • Tippen Sie auf Fertig, um eine Bindung zwischen den Eigenschaften „billplan“ und „customerplan“ zu erstellen.
    add_association_customer_bills

    Das folgende Bild zeigt die Zuordnungen zwischen den Datenmodellobjekten und den Eigenschaften, die zum Erstellen von Zuordnungen zwischen ihnen verwendet werden:

    fdm_associations

Eigenschaften des Datenmodellobjekts bearbeiten

Bearbeiten Sie nach dem Erstellen von Zuordnungen zwischen den Datenmodellobjekten „customer“ und anderen Datenmodellobjekten die Kundeneigenschaften, um die Eigenschaft zu definieren, auf deren Grundlage die Daten aus dem Datenmodellobjekt abgerufen werden. Basierend auf dem Anwendungsfall wird die Mobilfunknummer als Eigenschaft zum Abrufen von Daten aus dem Datenmodellobjekt „customer“ verwendet.

  1. Aktivieren Sie das Kontrollkästchen am oberen Rand des Datenmodellobjekts customer, um es auszuwählen, und tippen Sie auf Eigenschaften bearbeiten. Der Bereich Eigenschaften bearbeiten wird geöffnet.

  2. Geben Sie customer als Modellobjekt der obersten Ebene an.

  3. Wählen Sie get aus der Dropdown-Liste Lese-Service.

  4. Im Abschnitt Argumente:

    • Wählen Sie Anforderungsattribut aus der Dropdown-Liste Bindung an.
    • Geben Sie mobilenum als Bindungswert an.
  5. Wählen Sie Update aus der Dropdown-Liste Schreib-Service.

  6. Im Abschnitt Argumente:

    • Wählen Sie die Eigenschaft mobilenum, wählen Sie customer aus der Dropdown-Liste Bindung an aus.
    • Wählen Sie mobilenum aus der Dropdown-Liste Bindungswert aus. 
  7. Tippen Sie auf Fertig, um die Eigenschaften zu speichern.

    configure_services_customer
  8. Aktivieren Sie das Kontrollkästchen am oberen Rand eines Datenmodellobjekts calls, um es auszuwählen, und tippen Sie auf Eigenschaften bearbeiten. Der Bereich Eigenschaften bearbeiten wird geöffnet.

  9. Deaktivieren Sie das Modellobjekt der obersten Ebene für das Datenmodellobjekt calls.

  10. Tippen Sie auf Fertig .

    Wiederholen Sie die Schritte 8 bis 10, um die Eigenschaften für das Datenmodellobjekt bills zu konfigurieren.

Dienste konfigurieren

  1. Wechseln Sie zur Registerkarte Services.

  2. Wählen Sie den Dienst get und tippen Sie auf Eigenschaften bearbeiten. Der Bereich Eigenschaften bearbeiten wird geöffnet.

  3. Im Bereich Eigenschaften bearbeiten:

    • Geben Sie optional einen Titel und eine Beschreibung ein.
    • Wählen Sie customer aus der Dropdown-Liste Ausgabemodellobjekt.
    • Tippen Sie auf Fertig, um die Eigenschaften zu speichern.
    edit_properties_get_details
  4. Wählen Sie den Dienst update und tippen Sie auf Eigenschaften bearbeiten. Der Bereich Eigenschaften bearbeiten wird geöffnet.

  5. Im Bereich Eigenschaften bearbeiten:

    • Geben Sie optional einen Titel und eine Beschreibung ein.
    • Wählen Sie customer aus der Dropdown-Liste Eingabemodellobjekt.
    • Tippen Sie auf Fertig .
    • Tippen Sie auf Speichern, um das Formulardatenmodell zu speichern.
    update_service_properties

Schritt 5: Testen von Formulardatenmodellen und Services

Sie können das Datenmodellobjekt und die Datendienste testen, um zu überprüfen, ob das Formulardatenmodell ordnungsgemäß konfiguriert ist.

Führen Sie folgende Schritte aus, um den Test durchzuführen:

  1. Wechseln Sie zur Registerkarte Modell, wählen Sie das Datenmodellobjekt customer und tippen Sie auf Modellobjekt testen.

  2. Wählen Sie im Fenster Formulardatenmodellobjekt testen Lese-Modellobjekt aus der Dropdown-Liste Modell/Service auswählen.

  3. Geben Sie im Abschnitt Eingabe einen Wert für die Eigenschaft mobilenum ein, die in der konfigurierten MySQL-Datenbank existiert und tippen Sie auf Testen.

    Die Kundendetails, die der angegebenen Eigenschaft „mobilenum“ zugeordnet sind, werden abgerufen und im Abschnitt „Ausgabe“ angezeigt, wie unten gezeigt. Schließen Sie das Dialogfeld.

    test_data_model
  4. Wechseln Sie zur Registerkarte Services.

  5. Wählen Sie den Dienst get und tippen Sie auf Service testen.

  6. Geben Sie im Abschnitt Eingabe einen Wert für die Eigenschaft mobilenum ein, die in der konfigurierten MySQL-Datenbank existiert und tippen Sie auf Testen.

    Die Kundendetails, die der angegebenen Eigenschaft „mobilenum“ zugeordnet sind, werden abgerufen und im Abschnitt „Ausgabe“ angezeigt, wie unten gezeigt. Schließen Sie das Dialogfeld.

    test_service

Bearbeiten und speichern Sie Beispieldaten

Mit dem Formulardatenmodell-Editor können Sie Beispieldaten für alle Datenmodellobjekteigenschaften, einschließlich berechneter Eigenschaften, in einem Formulardatenmodell generieren. Es ist eine Gruppe von zufälligen Werten, die dem für jede Eigenschaft konfigurierten Datentyp entsprechen. Sie können auch Daten bearbeiten und speichern, die auch dann beibehalten werden, wenn Sie die Beispieldaten neu generieren.

Gehen Sie folgendermaßen vor, um Beispieldaten zu generieren, zu bearbeiten und zu speichern:

  1. Tippen Sie auf der Seite des Formulardatenmodells auf Beispieldaten bearbeiten. Es werden Beispieldaten im Fenster „Beispieldaten bearbeiten“ generiert und angezeigt.

    edit_sample_data
  2. Bearbeiten Sie im Fenster Beispieldaten bearbeiten Daten je nach Bedarf und tippen Sie auf Speichern. Schließen Sie das Fenster.

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