Aktionscontainer verwenden
In unserem Beispiel haben wir den Content so eingestellt, dass er in der Aktions-tabelle "Inhalt Ihres Warenkorbs" verwendet wird. Mit ~BASKETABANDON.BASKETCONTENT~ wird er angezeigt. Nehmen wir einmal an, der Kontakt hat mehrere Artikel in seinem Warenkorb. In diesem Fall wollen wir alle Artikel in der tabelle anzeigen, und zwar im Rahmen eines bestimmten Layouts. Anstatt einfach nur den Content im Feld BASKET zu speichern, speichern wir ihn strukturiert in einem JSON- oder XML-Format. Mithilfe eines Aktionscontainers können wir das Layout für jedes Element im JSON-String festlegen. Die Standardstruktur des JSON-Strings sieht so aus:
[{"ID":1,"PARAM":"ACTIONCONTAINERNAME","CONTENT":{"FIELD1":"Content for field 1","FIELD2":"Content for field 2"}},{"ID":2,"PARAM":"ACTIONCONTAINERNAME","CONTENT":{"FIELD1":"Content for field 1","FIELD2":"Content for field 2"}}]
Sie können einen Online-JSON-Parser (z.B. http://json.parser.online.fr/) verwenden, um den JSON-String zu parsen:
[ { "ID":1,
"PARAM":"ACTIONCONTAINERNAME",
"CONTENT":{
"FIELD1":"Content for field 1",
"FIELD2":"Content for field 2" } },
{ "ID":2,
"PARAM":"ACTIONCONTAINERNAME",
"CONTENT":{
"FIELD1":"Content for field 1",
"FIELD2":"Content for field 2"
} } ]
Sie können aber auch einen XML-String verwenden:
<PARAMETERS>
<PARAMETER NAME="ACTIONCONTAINERNAME">
<ARTICLES>
<ARTICLE ID="1">
<FIELD1>
Content for field
1
</FIELD1>
<FIELD2>
Content for field
1
</FIELD2>
</ARTICLE>
<ARTICLE ID="2">
<FIELD1>
Content for field
1
</FIELD1>
<FIELD2>
Content for field
1
</FIELD2>
</ARTICLE>
</ARTICLES>
</PARAMETER>
</PARAMETERS>
Wir werden einen JSON-String mit 2 Elementen und 2 Feldern pro Element verwenden: NAME und PRICE. Der Name für den Aktionscontainer (PARAM), den wir verwenden, ist 'BASKET':
[{'ID':1,'PARAM':'BASKET','CONTENT':{'NAME':'Item 1','PRICE':'150'}},{'ID':2,'PARAM':'BASKET','CONTENT':{'NAME':'Item 2','PRICE':'55'}}]
1. Erstellen Sie zu Testzwecken einen neuen Datensatz in der Aktionstabelle. Klicken Sie in der Registerkarte 'Daten' (unten) der Aktionstabelle auf 'Neuer Datensatz' in der oberen Leiste. Füllen Sie die folgenden Felder aus:
- CREATED_DT (wird automatisch ausgefüllt)
- MODIFIED_DT (wird automatisch ausgefüllt)
- LISTID (die tabellenkennung der Zielgruppentabelle)
- USERID (ID eines Kontakts in der Zielgruppentabelle, benutzen Sie hier die ID des Datensatzes des Testkontakts)
- ACTIONCODE = 'BASKET'
- BASKETCONTENT = '[{"ID":1,"PARAM":"BASKET","CONTENT":{"NAME":"Item 1","PRICE":"150"}},{"ID":2,"PARAM":"BASKET","CONTENT":{"NAME":"Item 2","PRICE":"55"}}]'
Stellen Sie sicher, dass der JSON-String eine einzige Zeile ist.
2. Merken Sie sich die ID des Datensatzes, den Sie gerade erstellt haben. Sie werden sie brauchen, wenn Sie den Aktionscontainer testen.
Den Aktionscontainer erstellen
2. Löschen Sie den Text ~BASKETABANDON.BASKETCONTENT~ aus der tabelle und ziehen Sie einen "Aktionscontainer" aus der Registerkarte 'Komponenten' an diese Stelle.
3. Geben Sie in den Eigenschaften des Aktionscontainers den Namen "BASKET" ein. Wählen Sie in der Registerkarte 'Content' Ihre Aktionstabelle und das Feld "BASKETCONTENT" aus der Dropdown-tabelle aus. Wenn Sie fertig sind, klicken Sie auf 'OK'.
Der Aktionscontainer erscheint nun unter "In dieser tabelle verwendet" in der Registerkarte 'Komponenten'.
4. Klicken Sie mit der rechten Maustaste auf den Aktionscontainer und wählen Sie 'Neues Feld'. Benennen Sie es mit 'NAME'. Für jedes 'Feld', das im JSON-String verwendet wird, müssen Sie ein Feld hinzufügen. Wiederholen Sie den Vorgang also für das Feld 'PRICE'. Klicken Sie unter 'In dieser tabelle verwendet' auf den Aktionscontainer, um die Felder anzuzeigen.
5. Wie auch der Artikelcontainer, besteht ein Aktionscontainer aus 4 Abschnitten, denen Sie Contents hinzufügen können:
- Header: Content, der vor allen Elementen angezeigt wird
- Element: Content wird für jedes Element wiederholt
- Footer: Content, der nach allen Elementen angezeigt wird
- NoMatch: Content, der angezeigt wird, wenn für den Benutzer keine Elemente vorhanden sind
Im Element-Abschnitt können Sie Contents, Layouts und Felder aus dem JSON-Aktionstabellendatensatz einfügen. Diese werden für jedes Element wiederholt.
Fügen Sie im Element-Abschnitt "~ITEM.NAME~ = $ ~ITEM.PRICE~" ein. Alternativ können Sie die Felder auch hinzufügen, indem Sie im Aktionscontainer mit der rechten Maustaste auf ein Feld klicken und die Option 'Einfügen' wählen. Ihre tabelle sieht nun so aus:
In der Registerkarte 'Source' sehen Sie den HTML-Code für den Aktionscontainer:
<div id="MACONTAINER" maconstraint="" macontenteditable="false" maparameter="BASKET" >
<div id="MAHEADER" macontenteditable="true"></div>
<div id="MAITEM" macontenteditable="true">~ITEM.NAME = $ ~ITEM.PRICE~</div>
<div id="MAFOOTER" macontenteditable="true"></div>
<div id="MANOMATCH" macontenteditable="true"></div>
</div>
Wir verwenden die Abschnitte Header, Footer und NoMatch nicht, Sie können sie also löschen, wenn Sie möchten:
<div id="MACONTAINER" maconstraint="" macontenteditable="false" maparameter="BASKET" >
<div id="MAITEM" macontenteditable="true">~ITEM.NAME = $ ~ITEM.PRICE~</div>
</div>
6. Übernehmen Sie den obenstehenden Code mit Copy&paste in die Textversion Ihrer tabelle:
7. Starten Sie die Journey. Sie sollten nun Ihre Aktions-tabelle erhalten. Nachdem die tabelle zugestellt wurde, setzen Sie die Journey auf 'anhalten', um den Server nicht unnötig zu belasten. Da Sie für die Journey noch kein Enddatum eingestellt haben, läuft sie sonst endlos weiter.
Zurück zu Beispiel Warenkorbabbruch