New answers tagged

1

Donna! Did you figure this out yet? I just took your code, and aside from me calling the DE in quotes for setting of statuses, this works for me when previewing (via Preview and Test) within the editor against a DE. Here's one of my set statements: (other than that, the code is identical to yours) set @Status1 = Lookup("TestingStatusLookup", "Week 1 ...


1

You can do this, use only JobID as the key field, so your claimrow function might look something like this: SET @CouponRow = ClaimRow('Coupon', 'IsClaimed', 'JobID', JobID) This will use the same code for everyone on the same job ID. I would test this first though as batching may claim a code for each member of the first batch, and then reuse those codes. ...


1

One of those other roles are denying you the correct permission. You should remove all roles except admin and Mc admin


1

These are triggered sends that were created as a result of the Journey Builder Integration with Salesforce. If you create a Journey using Salesforce Data as your Entry Source, and then have an email send in this Journey, a triggered send is created to manage this. All object/action information that would normally be included is managed via Flows and ...


3

Currently the data retention policies for Salesforce Data Extension cannot be modified through Email Studio. To update the retention policy so that changes are retained, it should be done through Contact Builder.


2

If you are updating your catalog through bulk update (ftp as opposed to streaming updates) The displays are are re-generated on a change to the following fields: ProductName ImageLink OnlineAvailability RegularPrice SalePrice If you are using streaming updates to update your catalog, a image refresh also occurs when any field used in the display is ...


1

Some good workarounds have been suggested already. Let me add that there's also plugins like DESelect that offer this through a UI (instead of having to master SQL and Data Views... ;-) ).


1

You could define AMPScript block and embed one into your emails (leveraging string functions) and write exceptions to data extensions when spotted incorrect email addresses? (kinda reflecting the inner workings of the "list detective" logic)


3

I believe the 'Not Sent' Tracking extract may be what you are looking for. This list contains information on send jobs and messages that did not send. This will provide a list of those that were 'not sent' as part of a job, whether due to List Detective, an error, etc. It is not real time as you would need to extract it every time you need an update, ...


2

Reference this previous post 'VAWP links break for Salesforce Send Emails' to Ensure you VAWP link doesn't break with you process you will need to use a send log and use ampscript to look up these values. Reference this page 'Display Send-Time Content Contextually' AMPscript allows you to pull the send-time content from the send logging data extension ...


0

does the send happen at predictable time intervals? If so, you could: Step 1: write a SQL query activity (if you have the technical knowledge) or a DESelect "selection" (if you prefer a UI and don't mind introducing a third party tool) Step 2: create an automation and put the query / selection in it and schedule this so that the Data Extension is ...


1

I see 3 main options (assuming you want to do this inside of SFMC): Rest API: validateEmail (as mentioned before by Mateusz), though this is no doubt the most technical solution. SQL: Since you're already querying using SQL you could write an email validation query, something like SELECT * FROM Contacts WHERE email NOT LIKE '%_@__%.__%'. You could do the ...


1

You can use REST API. Rest API validateEmail I would use this endpoint on Salesforce side to validate email for records created with trigger that hits the API and stores information on flag.


3

I'm assuming you're referring to a Marketing Cloud Campaign, rather than a Sales Cloud Campaign? There's no "straightforward" way to access the Campaign Code as a personalisation string. Here are two potential solutions. The first uses the tried-and-tested Web Analytics Connector, but is a bit manual. The second works automagically using the SFMC Campaigns ...


2

Your idea is correct. %%view_email_url%% are tied to data in sendable Data Extension used to deploy the email. If data in it changes, so does the web version of email. Data Extension Rows carry a unique attribute that marks the row ID (I think it's called _ObjectID but I'm not 100% sure). How overwrite process works is it first deletes all the data in table ...


0

The documentation is a little misleading when it states: "The rule does not run when a record that previously met rule criteria is updated". Makes it sound like a record can't qualify again. So for updated to work, the record needs to be updated from something different than the entry criteria condition, to something that equals the condition. For example, ...


4

Technically you could use a measure in SQL if you wanted to. This would come with the stipulation that you would need to join data from your sendable data extension to the subscriberid/list related data that would be returned from a measure. Create measure. Use the measure in a data filter and populate a pre-defined data extension with the results from it ...


3

One of the most important callouts that was not made here would be contained in the following query syntax: INNER JOIN [_job] j ON j.jobid = s.jobid INNER JOIN _Subscribers sub ON s.SubscriberKey = sub.SubscriberKey where s.EventDate > convert(date, getDate()-7) AND j.EmailName like '%TOBERESENTDK%' It is imperative that instead of: INNER JOIN ...


3

The easiest way to set a something to use as a URL parameter would be through "Personalization" %%something%% (including this as part of the query string appended to a link). This would just bring in a Field Name that you were using in your sending source. You could go one further and do a lookuprows ampscript function if you wanted to do it situationally. ...


1

Regarding Business Units, first tell me this. Can you confirm that you are retrieving Data Extensions from all business units? We thought we were at first, bu it turns out the SDK limits you to one business unit. So one way you could filter is by setting the accountId in your config array here $config = array( 'appsignature' => 'none', '...


3

Open DataView is filled in on the 'back end' of SFMC. The user has no control over this DV. Basically view it as a SQL table without any primary keys, meaning every record is a new record (append only). The data can usually be referenced via foreign key on JobID (the unique number assigned to each email job) or SubscriberKey/ID So in your example: ...


0

This does refer to IP login whitelisting, since this data is loaded into MC from the Einstein platform outside the SFMC, but this issue has been resolved and this is no longer an issue since the IP have been whitelisted by SFMC


2

In order for it to appear in the data designer, it has to finish its synchronization and then complete the "contacts registration". After the first time you sync an object, it will pull in all the data and once it completes, it will attempt to register with your contact model. This will create the data extension under the Synchronized Data Extension ...


0

Use reporting and add subscribers based on the data to specific lists (maybe you have engagement data in your internal data warehouse that you could use?) List model often means = prepare your data "locally/outside SFMC" (spreadsheet, DBMS exports, custom reporting => import to a list) Check overall bounce stats for every job (tracking). Anything over 10% ...


0

I would ensure you are using your tenant-specific Marketing Cloud endpoint, which includes your tenant’s subdomain when making your request.


0

You can build a Landing Page of type code resource (subtype JSON), implement an authentication mechanism and execute the claimRow function using plain AMPScript there + return a Success or error message to the caller as JSON. Building such a service has been detailed here: http://www.devsutd.com/writing-a-rest-service-using-cloud-pages All you need to do ...


2

Add a prefix of "ENT" if running the query from a child Business Unit. "FROM ENT._subscribers"


-1

You could overcome this limitation by changing the logic from deleting select records in that data extension to deleting all records from a particular data extension. For this you would need to use a different endpoint: POST /contacts/v1/contacts/actions/delete?type=listReference


0

That documentation is for Smart Capture forms for legacy Landing Pages/Microsites within Email Studio. The Cloud Pages Smart Capture documentation is below. https://help.salesforce.com/articleView?id=mc_cp_smart_capture_block.htm&type=5 No upsert option exists in CloudPages currently. The workaround is to create a custom form via HTML on your landing ...


5

Instead of a sub query, you will want to use a join to the subscriber data view. For example: Select de.* from mydataextension de Join _subscribers s On s.subscriberkey = de.subscriberkey Where s.datejoined <= dateadd(m,-6,getdate())


0

I think rather than having Marketing Cloud push you the information, you are going to need to have your application pull the information. I do not know of any way to set up a trigger like this in Marketing Cloud -- I do not believe it possible, but someone else may know differently. If you do not receive any suggestions on push this information to your ...


0

1) The issue is that the filter uses a one->many relationship. For example purposes, think of an order confirmation journey where the goal is to get the contact to fill out a survey (tracked by an isSurveyCompleted field). Your contact could have gone through the journey multiple times for different order ID’s. Since you’d have to link the order data ...


0

This option has now been moved to the schedule options when creating a Data Extension Entry Event Journey. The automation entry is now no longer its own entry event. https://help.salesforce.com/articleView?id=mc_jb_schedule_a_data_extension_entry_source.htm&type=5 There is not an option for a second Journey to be automatically kicked off from ...


3

Synchronized Data Sources work with the Sales or Service Clouds. So you do not need to have both. Documentation on Synchronized Objects can be found here: Synchronized Data Sources


2

So, after a bit of digging I found a hacky way of doing this via CAST AS XML and CROSS APPLY. It is certainly not efficient and there is a roof on it, meaning it will take manual control to handle values beyond X amount. Sample of my SQL: SELECT p.Email , p.FieldA , c.FieldB FROM [testParse] p CROSS APPLY ( Select CAST('<x>' +...


1

To answer your first question, I would recommend first moving the Open Data View into a Data Extension, this will help increase efficient processing times and reduce timeout risk due to increased volume in your Data View. This can be done easily with a query like so: SELECT * FROM _Open You then reference this DE in your second query: Select a.* FROM [A] ...


2

This is an issue with HTML Email Development and Design, not with SFMC. As @JohannesSchapdick mentioned, it is due to the way that Outlook is rendering your HTML - as most Email Clients have their own rules and defaults on HTML/CSS rendering, it is impossible to have the same exact experience across each client. You can get close with utilizing many ...


1

I would try two things: 1) In order for this to work also consider your data extension. If you e.g. have "email" as primary key, a duplicate entry will trigger a 500 (so your form might work once with an empty string, then fail). Also ensure that your input matches the Data type of the field. 2) your sending page should POST with the following two Headers:...


2

Send Logging works in Sandbox accounts. You should verify that there aren't any other active SendLog Data Extensions in the Business Unit, and/or that your account is not setup to log everything the the Enterprise account SendLog. As well as, that the Data Extension you are using is built from the SendLog Data Extension template.


1

substring takes a length argument as the third option, and using the index value from the space gives 1 more length than the first name. Either skip adding 1 to the @WhiteSpacePos value, or use @WhiteSpacePos-1 as the length to substring.


1

You will not get a 'this record is currently being edited' type of message. Calls will be processed in the order they are received.


1

You need to make sure, that your /validate-route returns status code 200 and the following json response body: {"success": true} Another problem could be, that you need to specify the Application Extension Key, which with the new "Installed Packages" screen in Setup should now be the "Package Id" in configurationArguments. applicationExtensionKey and key ...


5

Your endpoints for execute as well as save, publish, validate, and stop do not appear to be valid endpoints in your example. The endpoint you have specified in for all of these in your example is: https://<firebase_project_id>.firebaseio.com/User.json This endpoint should be a url to a REST API endpoint that accepts a POST request, NOT an ...


4

Are you testing this with a Data Extension and do you have a field in it named 'SubscriberKey'? If not, you will need to use '_SubscriberKey' to pull in the system defined SubscriberKey value, like noted here. Additionally, it doesn't appear that for your use case you should be using URLEncode(), and should be using Base64Encode(). Something similar to ...


2

You should be able to add in the 'Report' FTP folder as a File Location in Admin. From there you just change your import activity to reference this new location and then you should be able to use an automation to import it into a DE.


0

I would first create a field called JobID inside your DocCobranca DE (gonna call this DC). Then use an AMPscript Upsert inside the email to insert the JobID and 'SentDate' into the DE. For example: UPSERT("DocCobranca",1,"SubscriberKey",_SubscriberKey,"JobID",jobid,"SentDate",NOW()) Now if you are going to be including multiple iterations of each ...


2

I acutally just wrote an article on this in my brand spanking new blog. Below are the highlights from it as well as a sample taken from my original SFSE post on it. Here are the available Methods: GET DELETE HEAD OPTIONS PATCH POST PUT Here is a working sample (taken from here) <script runat=server> Platform.Load("core", "1.1.1"); var accessToken ...


0

Data Views by default hold only last 6 months of data, so you can shorten your query to: SELECT * FROM [A] WHERE email NOT IN ( SELECT SubscriberKey FROM _Open ) assuming that your email will be the subscriber key. For the second part of the question, you would have to know the JobID of each of those sends to be able to filter them down.


0

It is important to verify the localized fields have been identified as such. To do so, go to "Personalization Builder > Email Recommendations > Admin > Catalogs > Gear Icon (Settings) > Mapping" and check the "Locale fields" section: If that is correct, make sure you only use the general name of the field in your recommendation display's personalization, so ...


4

For Salesforce Data Entry Events there is no way of editing the entry source configuration currently. The only way of "modifying" it is: Create a new journey version Delete the Entry Event Configure a new Entry Event Re-configure all activities using data of that event (decision splits for example) A Salesforce Data Entry event is only editable as long as ...


Top 50 recent answers are included