New answers tagged

0

Moved to Answer from Comment for Easier Reference Have you considered that although the records are close in numbers that there may be other records, outside the 648, that are in DE 1 but not in DE 2? For instance that the 5373 records are the correct response and that the difference is not that there are only 648 records that are different, just that the ...


0

You have to provide the value for subscriberkey/contactkey. Typically this would be the uniqueid you have for a subscribers. An example of this would be ContactID/LeadID Customer Number emailaddress Subscriberkey ALWAYS = Contactkey For clarity on the difference between Subscribers and contacts Differentiating between contacts and subscribers is important ...


2

@Niko's answer is accurate, but not complete. Below is a list of things you will want to validate prior to deleting any data extensions: Was the data extension recently used to send an email job? When you send to a data extension, the View as Webpage(VAWP) is tied to the sendable data extension. This means that any changes to this data extension will affect ...


0

There definitely could be many related assets tied up with those Data Extensions, like SQLs, scripts, or Lookups on the CloudPage, for example. Deleting Data Extension without knowing what purpose it served and where and how it was used before might cause errors. Real-life example- We had one empty Data Extension that was used to hold really specific errors ...


0

This is a script I usually use as a starting point for this type of thing: <script runat="server"> var mid = 1234567; //MID of target BU -- OPTIONAL Default is current BU of script/page var deCustKey = 'gg_de1'; //your DE's CustomerKey / External Key var prox = new Script.Util.WSProxy(); //creates proxy var subArr = []; var moreData = true; ...


0

In this article you can find an explanation - Subscribers may see 'Via' because the 'From Address' being used in a Sender Profile is not using an authenticated domain (SAP or Private Domain). The 'Mailed-By' will always display the bounce host assigned to your account.


2

This is partially correct. Unless you actively ask for the send process to dedupe on email address, both Subscribers Keys sharing same email will receive each their own version. You can select the dedupe option upon configuring the send, as described in the help docs. Do observe, that send process picks the recipients randomly, so you can’t be sure which of ...


0

This can be achieved, per the information from the help doc below: "To be able to synchronize different objects in each BU that is connected with the same Salesforce Org, you will need to connect each business unit to your Salesforce Org with a new Salesforce System User. By connecting with a separate Salesforce System User for each business unit, then ...


0

To dig into your issue, I did a few debugging items to write it out and find the solution. I found the following that could be what was happening: Main issue: Your WSProxy was hitting an error, but since you were not outputting or handling the response, you did not know since the page would still load as error responses in WSProxy do not throw a 500 error. ...


1

This really does sound like something you won't solve without Salesforce Support as we don't have any control over concatenation apart from this checkbox and can't set an order in which the parts would be delivered. Create a support case and follow the guidelines (from this article): Minimum Information Needed to Investigate At least 5 mobile numbers ...


1

The "name" must be the same for both input fields; this is what links radio buttons together. Use the "value" to specify the value that should be used. <div class="sc-formfield-input"><label>&nbsp;<!-- Just Blank--></label> <input type="radio" id="willNotAttend" name="...


0

No, there is no possibility to track OOTB Bit.ly shortener within Mobile Connect, however, as an alternative, you can shorten your links via API calls saved in the Code Snippet and simply bring it to the SMS text by %%=ContentBlockByID(...)=%% The code snippet would contain - <script language="javascript" runat="server"> Platform....


0

Not sure if it is still a relevant question but here is the code snippet you can use to shorten the links with the Bit.ly service. Your code used API v3 and now they fully switched to v4, so the logic is a little bit different. <script language="javascript" runat="server"> Platform.Load("Core", "1"); try{ </...


2

In the Measurement and Dimension area, you can drag those in any order you want you can also click on the 'Run Now' Button to run the report and download it to see what it looks like, without emailing it


0

We have successfully imported custom fonts just by adding the below code inside the style tag: @import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;1,100;1,300;1,400&display=swap'); Not using any Base64 code.


3

The issue is within the TriggeredSendID field that has Text datatype and no set value for the length, which means it has unlimited length. Take into consideration this is an unofficial and not recommended configuration of the field as SF Support told us some time ago. Moreover, you can do a Lookup to the TriggeredSendID field to retrieve the value from it ...


0

To answer your question about status, refer to https://help.salesforce.com/articleView?id=sf.mc_as_data_view_sms_subscription_log.htm&type=5. The opt status values are applicable for both SMS and Push: OptInStatusID Key NotOptedIn = 0 OptInPending = 1 OptedIn = 2 DeletingNotOptedIn = 10 DeletingOptInPending = 11 DeletingOptedIn = 12


0

In order to be able to do that, you need separate API users in Salesforce CRM and one API user in Marketing Cloud that has access to both of the BUs that you want to connect. Here’s how to set this up: In first BU, go to Setup > Apps > Salesforce Integration and connect the accounts using Salesforce API user 1 In first BU, go to users and click on the ...


0

If I understood you correctly you can do it this way using loop %%[ var @rows, @row, @rowCount, @counter, @5thMonth set @rows = LookupRows("DE_name", "return", "1") set @rowCount = rowcount(@rows) for @counter = 1 to @rowCount do set @row = row(@rows, @counter) if @counter == 5 then set @5thMonth = field(@row, "...


2

Salesforce functionality impacted in Chrome 92 after recent change to cross-origin iframe JavaScript dialogs. As of Chrome version 92, customers may experience issues when working across the Salesforce platform. This impact may appear with buttons that were previously functioning as expected, visualforce pages/components, or other content not performing as ...


0

The Console of the Developer Tools inside Google Chrome tell us this: This means that the script running inside of an iframe that contains this button is getting blocked by Chrome as described in this article. When you click this button, two alerts should be displayed, but now those alerts are blocked and the rest of the script (that would disconnect this ...


2

Below are a couple possible solutions for your need. These are completely off the hip coding so may need to adjust it some to implement. Using EXISTS(): SELECT a.SubscriberKey , a.EmailAddress , a.Status , a.DateJoined , b.LatestEmail FROM _Subscribers a LEFT JOIN SentLatest b on b.subscriberkey = a.subscriberkey WHERE EXISTS ( SELECT TOP 1 ex....


3

I only see two updatedON values. If you only need to find the greatest of those two then you could do something like this: select e.cust_id customer_id , e.event_id event_id , case when c.updatedon >= w.updatedon and c.updatedon >= m.updatedon then c.updatedon when w.updatedon >= m.updatedon then w.updatedon else m....


3

I'm not a fan of denormalizing product data into numbered columns. It makes everything more difficult, especially in SFMC where there are limited options for pivoting the data. Tall and skinny tables are better than short and fat ones. ~Anonymous DBA If you're only limited to 3 products, then you could do something like this: SELECT c.[key] , c....


0

I was able to solve this. I used AmpScript to point to the filed in the Trigger De that has the Name and email address!


1

Basically the Einstein STO activity is a modified wait activity, and so it inherits the same behavior. And yes, Exit and Goal Criteria are evaluated when the contacts come out of the Einstein STO activity, as with the Journey Builder Wait activity.


1

I use an undocumented REST API (which I think is here to stay because it's pretty extensive and the Query Tool AppExchange app uses it) //get a query by id. Uses a custom apex class to handle the respose JSON. public static MCQueryDefinitionResponse getQuery(String queryId){ //GET /automation/v1/queries/{{queryID}} String authToken = getAccessToken();...


3

The not-sent reason can only be found in the NotSent Tracking Extract and the NotSentEvent SOAP API object. For the first, you'll need to create a Not Sent data extension to accept the import. Then you can configure a Tracking Extract in Automation Studio with these steps. Extract (check the Not Sent Box) Transfer (from Safehouse) Transfer Unzip (to ...


1

The MobileConnect demographic has interesting quirks and MobileConnect Subscription adds another layer of complexity when managing the Optin. With regards to QueueMO API, you'd need the OAuth credentials to be able to leverage the APIs - I will list the references to achieve this: Create and Install Packages Ensure the scope in the installed package ...


1

Apparently, you have to include the DE target in order to do any kind of update. This sucks because now I have to retrieve that info first, but oh well. <Envelope xmlns="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <Header> <fueloauth>{{dne_etAccessToken}}</...


1

So, the issue you were facing is that you need to include the QueryAllAccounts property inside the WSProxy call in order to retrieve the info you want. Also, the return is already a JSON so attempting to parse it would result in a 500 error. Something like: <script runat="server"> Platform.Load("Core","1"); var prox = ...


2

Marketing Cloud is a completely separate app, you don't "install" it. In Marketing Cloud, there is a concept of super messages - based on your contract, you buy a number of super messages which are then used for "paying" for sending emails. If you're out of super messages, you can always buy more, so technically there are no limits. A ...


2

Can you please try with single quotes, and to be on the safe side, wrap the DE name in square brackets: SELECT Id FROM [DE_test1] WHERE Id = '0032X00002NNlK7QAL' If you're running this is Query Studio, please give it a few tries - Query Studio isn't always reliable ;-)


0

If this field is required in CRM, then it is visually checked but not synced. To start working with it: Select a needed object in Synchronised Data Sources in Contact Builder Click the "Edit Fields" button Without changing anything, click "Save". Navigate to the "Activity" tab on the object's page, and check if you see a new ...


0

When creating a Email Send activity in Journey Builder, the Salesforce Data Extensions folder and Shared Salesforce Data Extensions folder will never be present. This is functioning as designed. You would need to create a Salesforce Send definition via the Interactions tab in Email Studio and then use the Salesforce Email Send tile in Automation Studio, ...


0

At this point, you would want to reach out to Support. There could be a lot of different issues that could be causing this. As a best practice, please ensure that the Salesforce System User is assigned the System Administrator profile. You will also want to ensure that the Marketing Cloud API User is integrated, as well as your own Marketing Cloud user. ...


7

This is my opinion, but I wouldn't even bother with setting up a sandbox business unit. It's better to consider SFMC as "all production". Development and QA configuration is most efficient as simple copies with different names in the same BU. Package Manager and Deployment Manager are hamstrung by limitations of the web services. There are too ...


1

Package manager should be able to assist here


0

There is no OOTB functionality but once we did a similar check on the project and that is how we proceeded - Get the value from the AddedBy field from the ListSubscriber Data View, which would give you the AccountUserID number of the user who added a particular subscriber. SELECT AddedBy, AddMethod, CreatedDate, DateUnsubscribed, ...


1

AMPscript is not a recommended tool to use when it comes to the segmentation of the audience. It is better to prepare your contacts in the Data Extension in advance and once an email is sent to add an additional layer of simple calculations and of course personalization by AMPscript. You can use SQL Query in the Automation Studio to prepare the Data ...


0

Your request is understandable and requires several things: Firstly, it is was not specified whether your form is actually a SmartCapture form of the custom one. For your case, it would be easier to create a CloudPage with a form that would be tweaked based on your needs. Your case presumes dynamic validation of the input data into the form. In other words, ...


0

It is still advised to use SQL for such use-case, as @jake314159 suggested already. Here you can find a step-by-step explanation of his suggestion and a bit more on top. Additionally, there is a similar question has been asked some time ago and there you find a way how to manually map TriggeredSendExternalKey and identify what was the journey used for ...


0

Your query has a WHERE clause with something like - WHERE Status = 'Example A' and an Update Data Action. When the status is changed in the Synced DE to the value 'Example B', your query will not update the status, since it filtering out records by Status = 'Example A' What options you have: Populate records that follow this rule - WHERE Status = 'Example ...


-1

If you using "Add and Update", it will only update an existing row with the new data. However, if you are looking to remove an old record after running the SQL Query, you need to use "Overwrite".


1

You need to Activate your Journey first, then drop your Contacts/Lead within the Campaigns.


1

I'd recommend adding an AMPscript block at beginning of your email body and setting the subject there: %%[ var @subject var @idCommanda set @idCommanda = AttributeValue("idCommanda") /* check if this send context attribute has a value */ if not empty(@idCommanda) then set @subject = concat("Comanda ta #", @idCommanda, " fost ...


0

Are you using a query to populate the DE that you are then extracting? If so, you can match the TriggererSendDefinitionObjectID on the _Sent data view to the JourneyActivityObjectID on the _JourneyActivity data view. Then you can match VersionID on the _JourneyActivity to VersionID on the _Journey data view, in order to retrieve the JourneyName from the ...


0

I discovered the solution which was actually straightforward. After logging in and making sure that the API user has visibility to all the campaigns the solution ended up that the Campaign has to be changed to Active status in the CRM before it will show up in Marketing Cloud Journey Builder Salesforce Entry data.


0

To Assist here is a working configuration for postman: Request: <?xml version="1.0" encoding="UTF-8"?> <s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:u="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-...


1

This may not directly answer your question. [As you have not/does not want to share code. Please refer the below code snipped which might help you to customize your code and debug the response. Also I would suggest to update the status code. I see you cannot see from script; but you can check the status code in POSTMAN. <script runat="server">...


Top 50 recent answers are included