Expand my Community achievements bar.

Announcing the launch of new sub-community for Campaign Web UI to cater specifically to the needs of Campaign Web UI users!
SOLVED

Getting the label of a split subset per delivery in data extraction

Avatar

Level 1

Hi everyone,

I'm working on an automated report and one of the fields I'm trying to pull is the label of the split subset the delivery is attached to. This is what I have right now in the Data Extraction activity: 

image.png

In the picture below for example, I would be trying to get the values 'Engaged' and 'LowEngaged' for Delivery 1 and Delivery 2.

image.png
The expression above that I'm currently using just returns the label of first subset for every delivery. I've tested this on other campaigns with more than 2 subsets and they all just return the same label.


What I'm getting:

Delivery LabelSubset Label
Delivery Template 1Engaged
Delivery Template 2Engaged

What I want to get:

Delivery LabelSubset Label
Delivery Template 1Engaged
Delivery Template 2LowEngaged

Is there an expression I can use to achieve this or is this going to require a JS solution? Any help is appreciated.

Bonus Question:

Can this technique be applied to cases where there's more than 1 split?

image.png

In this case is there a way to return something like:

  • "Engaged, Travel2"
  • "Engaged, Travel"
  • "LowEngaged, Travel2"
  • "LowEngaged, Travel"

Again, any help is much appreciated.

Thanks.

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

Hi,

 

The answer to both questions is to use js; get the workflow's data clob then parse it for transitions, i.e.:

 

for each (var extract in workflow.activities.extract) {
  for each (var transition in extract.transitions.*) {
    // make use of transition.@label, transition.@target
  }
}

 

Thanks,

-Jon

View solution in original post

3 Replies

Avatar

Correct answer by
Community Advisor

Hi,

 

The answer to both questions is to use js; get the workflow's data clob then parse it for transitions, i.e.:

 

for each (var extract in workflow.activities.extract) {
  for each (var transition in extract.transitions.*) {
    // make use of transition.@label, transition.@target
  }
}

 

Thanks,

-Jon

Thanks Jon, apologies for bothering you but I'm not super familiar working with javascript in the context of pulling values from Campaign. Is there a resource I reference or some sample code? I tried figuring it out on my own and haven't had much luck. Thanks again for your help!

Avatar

Community Advisor

Hi,

If your split is one time configuration, you can do JS variables in Advanced tab of split.

Js you can use:

vars.split1="Engaged"

vars.split2="Low Engaged"

 

And then you can use these variables in your delivery as: <%=vars.split1%>

 

Thanks.