1

I have this journey as an example:

  1. Journey accepts new event data as soon as order is created (contact event )
  2. Each order is a separated journey entry
  3. One contact can have multiple orders placed at the same time, meaning that at the same time one contact can be added to the journey twice with different order information
  4. There are multiple touches/messages in the workflow
  5. If customer order changes to "Delivered" I want to end his/her journey and stop sending more messages

Due to the data cardinality between Contacts DE and Orders DE (one-to-many) when I'm using decision split, it evaluates incorrectly. I did some digging and understand the reason of it as explained here.
I was exploring different ways on how to solve it and I came up with an idea of stopping individual sends - like preventing send with RaiseError function. I'm sure it will work in Email but I'm not sure about SMS - did anyone used it in them?

Also, can exclusion script be used with either journey emails or sms messages? If yes that's simplifies things as I'll use that to exclude "Delivered" orders.

Lastly, if anyone has any suggestions how to solve this issue in a different way I would appreciate push in right direction.

2

Don't use the RaiseError AMPscript function for a couple of reasons:

  1. The email will still be included as a SuperMessage 'send', even though the email is not sent.
  2. Raising an error will most likely cause the Triggered Email to become paused (Send Email Activities are Triggered Emails).

I would use an Exclusion Script. This should be available in the Send Email Activity in your Journey (refer to screenshot below). If it's not, support can enable this for you.

exclusion script field

Contextual attributes are available to Exclusion Scripts, so for example if you have an 'OrderNumber' field in your Event Source DE you can use this in your Exclusion Script. As it appears you are storing your orders in a different DE and have a 'Delivered' field that is boolean, then your Exclusion Script could look something like this:

Lookup('NameOfYourOrderDE','Delivered','OrderNumber',AttributeValue('OrderNumber')) == true
  • Thanks Eliot! Do you know if this will work in SMS as well? – Mateusz Bartkowiak Mar 19 '17 at 12:07
  • Exclusion Scripts aren't available in SMS messages, however you could include use Data Binding in an Update Contact Data Activity and a Decision Split prior to your Send SMS Activity, similar to this answer I provided. It's not very intuitive to configure, so drop me an email at eliot.harper[at]salesforcemvps.com if you need help configuring. – Eliot Harper Mar 19 '17 at 13:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.