0

I want to save the subscriber from a DE in a new DE, who have birthday today. The birth date ist not saved in in the DE, so I want to use it from the profile center.

var newsletterDE = DataExtension.Init("newsletterDE");
var newsletterRows = newsletterDE.Rows.Retrieve();

for(var i = 0; i<newsletterRows.length();i++) {

var subObj = Subscriber.Init(reihen[i].Key);
var attributes = subObj.Attributes.Retrieve();

In the next part I need only the birth date. I tried:attributes[0].Birth_Day in various ways, but I did not find the right form.In my log DE, the field is empty or "undefined". Does anybody know the right syntax? The field is not empty for all subscribers in my DE.

1 Answer 1

0

This sounds like a use case for a query activity. It's also a lot simpler.

Here's the query you'd use:

SELECT S.EmailAddress, EA.[Birth_Day] FROM
OriginalDE D
JOIN _Subscribers S ON S.EmailAddress = D.[Email Address]
JOIN _EnterpriseAttribute EA ON EA._SubscriberID = S.SubscriberID

You'll change out "OriginalDE" with your original DE name and replace D.[Email Address] with the name of the email address field in your original DE. You'll set the destination DE as the Target of the Query Activity.

Of course, if you run this query from a child business unit, be sure to prepend the _Subscribers and _EnterpriseAttribute view names with ENT.

Running it from a child BU would look like this:

SELECT S.EmailAddress, EA.[Birth_Day] FROM
OriginalDE D
JOIN ENT._Subscribers S ON S.EmailAddress = D.[Email Address]
JOIN ENT._EnterpriseAttribute EA ON EA._SubscriberID = S.SubscriberID

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .