Einrichten von Google Tabellen- oder Microsoft Excel-Dateien für die Datenaufnahme
Sobald Sie das Formular erstellt und in der Vorschau angezeigt haben, ist es an der Zeit, die entsprechende Tabelle so zu aktivieren, dass sie Daten empfängt. Sie können die Tabelle manuell für die Datenaufnahme aktivieren oder Admin-APIs verwenden, um Datenaufnahme in einer Tabelle zu ermöglichen.
Manuelles Aktivieren der Tabelle für die Datenaufnahme
So ermöglichen Sie die Datenaufnahme in der Tabelle:
-
Öffnen Sie die Tabelle, die Ihr Formular hat, und fügen Sie ein neues Blatt hinzu, das Sie in
incoming
umbenennen.note warning WARNING Wenn das Blatt incoming
nicht vorhanden ist, sendet AEM keine Daten an die Tabelle. -
Fügen Sie aus diesem Blatt eine Tabelle mit dem Namen „intake_form“ ein. Wählen Sie die Anzahl der Spalten aus, die zum Abgleich der Formularfeldnamen erforderlich sind. Navigieren Sie dann in der Symbolleiste zu „Einfügen“ > „Tabelle“ und klicken Sie auf „OK“.
-
Ändern Sie den Namen der Tabelle in „intake_form“. Um in Microsoft Excel den Tabellennamen zu ändern, wählen Sie die Tabelle aus und klicken Sie auf „Tabellendesign“.
-
Fügen Sie als Nächstes die Formularfeldnamen als Tabellenkopfzeilen hinzu. Um sicherzustellen, dass die Felder genau gleich sind, können Sie sie aus dem Blatt „shared-default“ kopieren und einfügen. Wählen Sie auf Ihrem Blatt „shared-default“ die unter der Spalte „Name“ aufgeführten Formular-IDs aus und kopieren Sie sie, mit Ausnahme des Felds „Senden“.
-
Wählen Sie im Blatt „eingehend“ die Option „Sonderzeichen einfügen“ > „Zeilen in Spalten exportieren“, um die Feld-IDs als Spaltenkopfzeilen in dieses neue Blatt zu kopieren. Behalten Sie nur die Felder bei, deren Daten erfasst werden müssen. Andere Felder können ignoriert werden.
Jeder Wert in der Spalte
Name
des Blattesshared-default
, mit Ausnahme der Senden-Schaltfläche, kann als Kopfzeile im Blattincoming
dienen. Betrachten Sie beispielsweise das folgende Bild, das Kopfzeilen für ein Kontaktformular veranschaulicht: -
Verwenden Sie die AEM Sidekick-Erweiterung, um eine Vorschau der Formularaktualisierungen anzuzeigen. Ihr Blatt kann jetzt eingehende Formularübermittlungen aufnehmen.
note note NOTE Selbst wenn Sie das Blatt zuvor in der Vorschau angezeigt haben, müssen Sie die Vorschau erneut anzeigen, nachdem Sie das Blatt incoming
zum ersten Mal erstellt haben.
Nachdem die Feldnamen zu dem Blatt incoming
hinzugefügt wurden, kann Ihr Formular Übermittlungen annehmen. Sie können das Formular in der Vorschau anzeigen und damit Daten an das Blatt senden, das es verwendet.
Das Blatt ist jetzt für den Empfang von Daten eingerichtet. Sie können das Formular mit dem adaptiven Formularbaustein in der Vorschau anzeigen oder POST-Anfragen verwenden, um mit dem Senden von Daten an das Blatt zu beginnen.
Verwenden von Admin-APIs, um das Akzeptieren von Daten durch eine Tabelle zu aktivieren
Sie können auch eine POST-Anfrage an das Formular senden, damit es Daten aufnehmen und Kopfzeilen für das Blatt incoming
konfigurieren kann. Nach Erhalt der POST-Anfrage analysiert der Dienst den Anforderungstext und generiert autonom die für die Datenaufnahme erforderlichen Kopfzeilen und Blätter.
So verwenden Sie Admin-APIs, um das Akzeptieren von Daten durch eine Tabelle zu aktivieren:
-
Öffnen Sie die von Ihnen erstellte Arbeitsmappe und ändern Sie den Namen des Standardblattes in
incoming
.note warning WARNING Wenn das Blatt incoming
nicht existiert, sendet AEM keine Daten an diese Arbeitsmappe. -
Zeigen Sie eine Vorschau des Blattes im Sidekick an.
note note NOTE Selbst wenn Sie das Blatt zuvor in der Vorschau angezeigt haben, müssen Sie die Vorschau erneut anzeigen, nachdem Sie das Blatt incoming
zum ersten Mal erstellt haben. -
Senden Sie die POST-Anfrage, um die entsprechenden Kopfzeilen auf dem Blatt
incoming
zu generieren, und fügen Sie das Blattshared-default
zu Ihrer Tabelle hinzu, falls es nicht bereits existiert.Informationen zum Formatieren der POST-Anfrage zum Einrichten des Blattes finden Sie in der Dokumentation zur Admin-API. Sie können sich das folgende Beispiel ansehen:
Anfrage
code language-json POST 'https://admin.hlx.page/form/{owner}/{repo}/{branch}/contact-us.json' \ --header 'Content-Type: application/json' \ --data '{ "data": { "Email": "john@wknd.com", "Name": "John", "Subject": "Regarding Product Inquiry", "Message": "I have some questions about your products.", "Phone": "123-456-7890", "Company": "Adobe Inc.", "Country": "United States", "PreferredContactMethod": "Email", "SubscribeToNewsletter": true } }'
Antwort
code language-json HTTP/2 200 content-type: application/json x-invocation-id: 1b3bd30a-8cfb-4f85-a662-4b1f7cf367c5 cache-control: no-store, private, must-revalidate accept-ranges: bytes date: Sat, 10 Feb 2024 09:26:48 GMT via: 1.1 varnish x-served-by: cache-del21736-DEL x-cache: MISS x-cache-hits: 0 x-timer: S1707557205.094883,VS0,VE3799 strict-transport-security: max-age=31557600 content-length: 138 {"rowCount":2,"columns":["Email","Name","Subject","Message","Phone","Company","Country", "PreferredContactMethod","SubscribeToNewsletter"]}%
Sie können Tools wie curl oder Postman verwenden, um diese POST-Anfrage auszuführen, wie unten dargestellt:
code language-json curl -s -i -X POST 'https://admin.hlx.page/form/wkndforms/portal/main/contact-us.json' \ --header 'Content-Type: application/json' \ --data '{ "data": { "Email": "john@wknd.com", "Name": "John", "Subject": "Regarding Product Inquiry", "Message": "I have some questions about your products.", "Phone": "123-456-7890", "Company": "Wknd Inc.", "Country": "United States", "PreferredContactMethod": "Email", "SubscribeToNewsletter": true } }'
Die oben genannte POST-Anfrage enthält Beispieldaten, einschließlich der beiden Formularfelder und ihren entsprechenden Beispielwerten. Diese Daten werden vom Admin-Dienst zum Einrichten des Formulars verwendet.
Ihr Formular kann jetzt Daten annehmen. Beachten Sie auch die folgenden Änderungen in Ihrer Tabelle:
Automatische Änderungen am Blatt, sobald die Datenaufnahme aktiviert wurde.
Nachdem das Blatt auf den Empfang von Daten eingestellt wurde, beachten Sie die folgenden Änderungen an Ihrer Tabelle:
Ein Blatt mit dem Namen „Slack“ wird Ihrer Excel-Arbeitsmappe oder Ihrer Google-Tabelle hinzugefügt. In dieser Tabelle können Sie automatische Benachrichtigungen für einen bestimmten Slack-Kanal konfigurieren, sobald neue Daten in Ihre Tabelle aufgenommen werden. Derzeit unterstützt AEM ausschließlich Benachrichtigungen an die Organisation AEM Engineering Slack und die Organisation Adobe Enterprise Support.
-
Um Slack-Benachrichtigungen einzurichten, geben Sie die „teamId“ des Slack-Arbeitsbereichs und den „Kanalnamen“ bzw. die „ID“ ein. Sie können auch den Slack-Bot (mit dem Debugging-Befehl) nach der „teamId“ und der „Kanal-ID“ fragen. Die Verwendung der „Kanal-ID“ anstelle des „Kanalnamens“ ist vorzuziehen, da sie bei Kanalumbenennungen erhalten bleibt.
note note NOTE Bei älteren Formularen war die Spalte „teamId“ nicht vorhanden. Die „teamId“ wurde in die Kanalspalte eingeschlossen, getrennt durch „#“ oder „/“. -
Geben Sie einen beliebigen Titel ein und geben Sie unter den Feldern die Namen der Felder ein, die in der Slack-Benachrichtigung angezeigt werden sollen. Jede Überschrift sollte durch ein Komma getrennt werden (z. B. Name, E-Mail).
note warning WARNING Die Blätter namens „shared-default“ dürfen niemals persönlich identifizierbare Informationen oder vertrauliche Daten enthalten, für die Sie keinen öffentlichen Zugriff wünschen.
Senden von Daten an Ihr Blatt send-data-to-your-sheet
Nachdem das Blatt auf den Empfang von Daten eingestellt wurde, können Sie das Formular mit dem adaptiven Formularbaustein in der Vorschau anzeigen oder Admin-APIs verwenden, um mit dem Senden von Daten an das Blatt zu beginnen.
Verwenden von Admin-APIs zum Senden von Daten an Ihr Blatt
Sie können POST-Anfragen direkt an Ihr Formular richten, indem Sie hlx.page, hlx.live oder Ihre Produktions-Domain verwenden, um Daten zu senden.
POST https://branch–repo–owner.hlx.(page|live)/email-form
POST https://my-domain.com/email-form
.live
oder in der Produktions-Domain funktionieren.Formatieren der Formulardaten
Es gibt verschiedene Möglichkeiten, die Formulardaten im POST-Text zu formatieren. Sie können Folgendes verwenden:
-
Array von
name:value
-Paaren:code language-json { "data": [ { "name": "name", "value": "Clark Kent" }, { "name": "email", "value": "superman@example.com" }, { "name": "subject", "value": "Regarding Product Inquiry" }, { "name": "message", "value": "I have some questions about your products." }, { "name": "phone", "value": "123-456-7890" }, { "name": "company", "value": "Example Inc." }, { "name": "country", "value": "United States" }, { "name": "preferred_contact_method", "value": "Email" }, { "name": "newsletter_subscribe", "value": true } ] }
Zum Beispiel
code language-json curl -s -i -X POST 'https://main--portal--wkndforms.hlx.page/contact-us' \ --header 'Content-Type: application/json' \ --data '{ "data": [ { "name": "name", "value": "Clark Kent" }, { "name": "email", "value": "superman@example.com" }, { "name": "subject", "value": "Regarding Product Inquiry" }, { "name": "message", "value": "I have some questions about your products." }, { "name": "phone", "value": "123-456-7890" }, { "name": "company", "value": "Example Inc." }, { "name": "country", "value": "United States" }, { "name": "preferred_contact_method", "value": "Email" }, { "name": "newsletter_subscribe", "value": true } ] }'
-
ein Objekt mit
key:value
-Paaren:code language-json { "data": { "name": "Jessica Jones", "email": "jj@example.com", "subject": "Regarding Product Inquiry", "message": "I have some questions about your products.", "phone": "123-456-7890", "company": "Example Inc.", "country": "United States", "preferred_contact_method": "Email", "newsletter_subscribe": true } }
Zum Beispiel:
code language-json curl -s -i -X POST 'https://admin.hlx.page/form/wkndforms/portal/main/contact-us.json' \ --header 'Content-Type: application/json' \ --data '{ "data": { "Email": "khushwant@wknd.com", "Name": "khushwant", "Subject": "Regarding Product Inquiry", "Message": "I have some questions about your products.", "Phone": "123-456-7890", "Company": "Adobe Inc.", "Country": "United States", "PreferredContactMethod": "Email", "SubscribeToNewsletter": true } }'
-
URL-kodierter (
x-www-form-urlencoded
) Text (wobei die Kopfzeilecontent-type
aufapplication/x-www-form-urlencoded
gesetzt ist)code language-shell 'Email=kent%40wknd.com&Name=clark&Subject=Regarding+Product+Inquiry&Message=I +have+some+questions+about+your+products.&Phone=123-456-7890&Company=Adobe+Inc.& Country=United+States&PreferredContactMethod=Email&SubscribeToNewsletter=true'
Zum Beispiel:
code language-shell curl -s -i -X POST \ -d 'Email=kent%40wknd.com&Name=clark&Subject=Regarding+Product+Inquiry& Message=I+have+some+questions+about+your+products.&Phone=123-456-7890& Company=Adobe+Inc.&Country=United+States&PreferredContactMethod=Email& SubscribeToNewsletter=true' \ https://main--portal--wkndforms.hlx.live/contact-us
Als Nächstes können Sie die Dankesnachricht anpassen.
Siehe auch
- Erste Schritte mit AEM Forms Edge Delivery Services
- Erstellen eines Formulars mit Google Tabellen oder Microsoft Excel
- Einrichten von Google Tabellen- oder Microsoft Excel-Dateien, um Daten zu akzeptieren
- Veröffentlichen des Formulars und Starten der Datenerfassung
- Anpassen des Erscheinungsbilds von Formularen
- Hinzufügen wiederholbarer Abschnitte zu einem Formular
- Anzeigen einer benutzerdefinierten Dankesnachricht nach der Formularübermittlung
- Komponenten von adaptiven Formularblöcken und ihre Eigenschaften