Loading
Journeys und Automatisierungen in Marketing Cloud Engagement
Abfrage: Journey Builder sendet versionsübergreifend per E-Mail

Abfrage: Journey Builder sendet versionsübergreifend per E-Mail

Aggregieren Sie alle Journey Builder-E-Mail-Sendungen über mehrere Versionen derselben Journey hinweg. Oder ändern Sie diese Abfrage, um versionsübergreifend Öffnungen, Klicks, Unzustellbarkeiten, Beschwerden oder Abonnements für einen bestimmten Zeitraum zu finden.

Bevor Sie loslegen

Zum Verwenden dieses Beispiels benötigen Sie ein funktionierendes Knowledge über SQL. Sie können die Codebeispiele kopieren und einfügen, müssen sie jedoch für Ihr Setup konfigurieren.

Erstellen einer Ziel-Data Extension

Erstellen Sie im Kontaktgenerator oder in Email Studio eine Standard-Data Extension mit diesen Eigenschaften und Feldern. Diese Data Extension ist das Ziel für die Datenausgabe Ihrer Abfrage.

Target Data Extension (Ziel-Data Extension) EmailSendsByJourney
Externer Schlüssel EmailSendsByJourney
Hinweis
Hinweis Wenn Sie die Data Extension in Email Studio erstellen, ersetzt die Spalte "Nullfähig" die Spalte "Erforderlich". Wenn kein Feld erforderlich ist, wählen Sie Nullable (Nullierbar) aus. Wenn ein Feld erforderlich ist, wählen Sie nicht Nullfähig aus.
Primary Key Name Datentyp Erforderlich Länge Standardwert
  JourneyName Text Ja 100  
  Datum Datum Ja    
  EmailName Text Ja 100  
  ActivityExternalKey Text Ja 100  
  Versendungen Zahl Ja    

Erstellen einer Abfrageaktivität

Erstellen Sie in Automation Studio eine SQL-Abfrage mit diesen Eigenschaften.

Abfragename EmailSendsByJourney
Externer Schlüssel EmailSendsByJourney

Beispielabfrage

Kopieren Sie diese Abfrage und fügen Sie sie ein.

SELECT j.journeyname,
       Cast(s.eventdate AS DATE) AS Date,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Sends
FROM   [_sent] AS s
       INNER JOIN [_journeyactivity] AS ja
               ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON s.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND s.eventdate > Dateadd(day, -7, Getdate())
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(s.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Finalisieren der Abfrageaktivität

Passen Sie die Abfrage an. Verwenden Sie die Zeilennummern in Automation Studio, um zu ermitteln, welche Zeilen geändert werden sollen.

  • Ersetzen Sie in Zeile 14 MY_JOURNEY_NAME durch den Namen Ihrer Journey.
  • Wenn Sie eine Abfrage über die untergeordnete Geschäftseinheit eines Enterprise 2.0-Accounts ausführen, ändern Sie Zeile 11, um das Präfix ent. hinzuzufügen.
    • Original: INNER JOIN [_subscribers] AS su
    • Geändert: INNER JOIN ent.[subscribers] AS su

Verknüpfen Sie die Abfrage mit der Ziel-Data Extension.

Target Data Extension (Ziel-Data Extension) EmailSendsByJourney
Datenaktion Überschreiben

Speichern Sie Ihre Abfrageaktivität und erstellen und aktivieren Sie dann eine Automatisierung, die die Aktivität verwendet.

Abfragevariation: Erfassen von Sendungen für alle Journeys

Entfernen Sie Zeile 14 aus der Abfrage, um Sendungen für alle Journeys zu erfassen.

AND j.journeyname = MY_JOURNEY_NAME

Abfragevariation: Erfassen eines anderen Zeitrahmens

Wenn Sie Daten für einen anderen Zeitrahmen erfassen möchten, verwenden Sie eine beliebige Anzahl von Tagen bis zu 180. Beispielsweise wurde Zeile 15 in dieser Abfrage geändert, um 14 Tage Daten abzurufen.

SELECT j.journeyname,
       Cast(s.eventdate AS DATE) AS Date,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Sends
FROM   [_sent] AS s
       INNER JOIN [_journeyactivity] AS ja
               ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON s.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND s.eventdate > Dateadd(day, -14, Getdate())
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(s.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Verwenden Sie diesen Code, um einen bestimmten Bereich abzurufen, beispielsweise alle Aktivitäten von gestern.

SELECT j.journeyname,
       Cast(s.eventdate AS DATE) AS Date,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Sends
FROM   [_sent] AS s
       INNER JOIN [_journeyactivity] AS ja
               ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON s.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ('EMAIL','EMAILV2')
       AND j.journeyname = MY_JOURNEY_NAME
       AND s.eventdate BETWEEN Dateadd(day,-1,Getdate()) AND Getdate() 
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(s.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Je nachdem, wie viele Daten Sie abrufen, kann es bei einer Abfrage, die mehr als 30 Tage dauert, zu Zeitüberschreitungen und Fehlern kommen. Wenn bei Ihrer Abfrage eine Zeitüberschreitung auftritt, versuchen Sie es mit einem kürzeren Zeitrahmen.

Abfragevariation: Erfassen von Öffnungen

Verwenden Sie diesen Code, um Öffnungen anstelle von Sendungen zu erfassen. Fügen Sie Ihrer Ziel-Data Extension Felder für Opens und OpenDate hinzu.

SELECT j.journeyname,
       Cast(o.eventdate AS DATE) AS OpenDate,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Opens
FROM   [_open] AS o
       INNER JOIN [_journeyactivity] AS ja
               ON o.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON o.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND o.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(o.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Abfragevariation: Erfassen von Klicks

Verwenden Sie diesen Code, um Klicks anstelle von Sendungen zu erfassen. Fügen Sie Ihrer Ziel-Data Extension Felder für Clicks und ClickDate hinzu.

SELECT j.journeyname,
       Cast(c.eventdate AS DATE) AS ClickDate,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Clicks
FROM   [_click] AS c
       INNER JOIN [_journeyactivity] AS ja
               ON c.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON c.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND c.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(c.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Abfragevariation: Erfassen von Bounces

Verwenden Sie diesen Code, um Unzustellbarkeiten anstelle von Sendungen zu erfassen. Fügen Sie Ihrer Ziel-Data Extension Felder für Bounces und BounceDate hinzu.

SELECT j.journeyname,
       Cast(b.eventdate AS DATE) AS BounceDate,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Bounces
FROM   [_bounce] AS b
       INNER JOIN [_journeyactivity] AS ja
               ON b.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON b.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND b.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(b.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Abfragevariation: Erfassen von Beschwerden

Verwenden Sie diesen Code, um Beschwerden anstelle von Sendungen zu erfassen. Fügen Sie Ihrer Ziel-Data Extension Felder für Beschwerden und ComplaintDate hinzu.

SELECT j.journeyname,
       Cast(c.eventdate AS DATE) AS ComplaintDate,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Complaints
FROM   [_complaint] AS c
       JOIN [_sent] AS s
         ON c.jobid = s.jobid
            AND c.listid = s.listid
            AND c.batchid = s.batchid
            AND c.subscriberid = s.subscriberid
       INNER JOIN [_journeyactivity] AS ja
               ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON c.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND c.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(c.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey

Abfragevariation: Erfassen von Abonnements

Verwenden Sie diesen Code, um Abonnements anstelle von Sendungen zu erfassen. Fügen Sie Ihrer Ziel-Data Extension Felder für Abonnementsabbestellungen und Abonnementabbestellungen hinzu.

SELECT j.journeyname,
       Cast(u.eventdate AS DATE) AS UnsubscribeDate,
       ja.activityname           AS EmailName,
       ja.activityexternalkey,
       Count(*)                  AS Unsubscribes
FROM   [_unsubscribe] AS u
       JOIN [_sent] AS s
         ON u.jobid = s.jobid
            AND u.listid = s.listid
            AND u.batchid = s.batchid
            AND u.subscriberid = s.subscriberid
       INNER JOIN [_journeyactivity] AS ja
               ON s.triggerersenddefinitionobjectid = ja.journeyactivityobjectid
       INNER JOIN [_journey] AS j
               ON ja.versionid = j.versionid
       INNER JOIN [_subscribers] AS su
               ON u.subscriberid = su.subscriberid
WHERE  ja.activitytype IN ( 'EMAIL', 'EMAILV2' )
       AND j.journeyname = MY_JOURNEY_NAME
       AND u.eventdate BETWEEN Dateadd(day, -1, Getdate()) AND Getdate()
GROUP  BY j.journeyname,
          j.journeyid,
          Cast(u.eventdate AS DATE),
          ja.activityname,
          ja.activityexternalkey
 
Laden
Salesforce Help | Article