Expand my Community achievements bar.

SOLVED

Variables in File Name

Avatar

Level 3

Hi,

I'm extracting a file and would like to include the campaign name in the filename.

<%= instance.label %> gives me the workflow name. This works perfectly.

In the script drop down I'm given the option to navigate to the Campaign level and select the following '<%= instance.operation.label %>', however on extract this supplies a blank and populates the filename with nothing.

I have the Campaign Name in the target data in the transition prior to the data extract. Can I use this? If so how?

 

Thanks in advance.

1 Accepted Solution

Avatar

Correct answer by
Employee

Hi Alistair,

Even I'm finding it strange that instance.operation.label is not fetching the correct details.I'll check more on this with product engineers.

However, I do have a workaround available for your problem.

  1. Inside the file export activity, on the advanced tab there is an Initialization Script section.
  2. I'll create a variable that will hold the campaign label.
  3. To fetch campaign label, fire a SQL query on database and get the result immediately.

Code to use in Initialization script will be 

var myQuery = "SELECT O1.sLabel "; myQuery = myQuery + "FROM XtkWorkflow W0 JOIN NmsOperation O1 "; myQuery = myQuery + "ON (O1.iOperationId = W0.iOperationId) "; myQuery = myQuery + "WHERE W0.iWorkflowId = " + instance.id; vars.fName = sqlGetString(myQuery) + ".csv";

 

Attached is the snapshot of my test setup for reference. 

Hope this helps.

Regards,

Vipul

View solution in original post

9 Replies

Avatar

Level 3

For some reason when creating using the instance.operation.label I am returning a null value which is confusing as the Campaign this workflow in running in has a populated label.

So I'm trying a new approach.

How do I replace the hardcoded text with a field held in my target data?

instance.vars.AKTEST = "Campaign Name"

I want to replace "Campaign Name" with the field @campaignLabel which I have appended in a previous enrichment.

Avatar

Correct answer by
Employee

Hi Alistair,

Even I'm finding it strange that instance.operation.label is not fetching the correct details.I'll check more on this with product engineers.

However, I do have a workaround available for your problem.

  1. Inside the file export activity, on the advanced tab there is an Initialization Script section.
  2. I'll create a variable that will hold the campaign label.
  3. To fetch campaign label, fire a SQL query on database and get the result immediately.

Code to use in Initialization script will be 

var myQuery = "SELECT O1.sLabel "; myQuery = myQuery + "FROM XtkWorkflow W0 JOIN NmsOperation O1 "; myQuery = myQuery + "ON (O1.iOperationId = W0.iOperationId) "; myQuery = myQuery + "WHERE W0.iWorkflowId = " + instance.id; vars.fName = sqlGetString(myQuery) + ".csv";

 

Attached is the snapshot of my test setup for reference. 

Hope this helps.

Regards,

Vipul

Avatar

Level 3

Hi Vipul,

Just wondering if you had any luck with the product engineers regarding that fact that <%= instance.operation.label %> is returning a null or undefined value from within a campaign?

Thanks!

Avatar

Employee

alistairk39680404 wrote...

Hi Vipul,

Just wondering if you had any luck with the product engineers regarding that fact that <%= instance.operation.label %> is returning a null or undefined value from within a campaign?

Thanks!

 

Hi Alistair,

This has been logged with Engineering but it might take some time to get an answer for it. Will keep this thread updated.

Regards,

Vipul

Avatar

Level 3

Vipul, was there ever any feedback on this?

Avatar

Level 2

Hi Vipul,

This issue still appears to be open as of 8931:  Could you provide the adobe Jira ticket number and any update on it?

Thanks very much !

Avatar

Level 2

Hi Vipul, can you drop the NEO adobe jira ticket ID for this please?  Thanks a lot.

Avatar

Level 1

@Vipul_Raghav Hi Vipul, instance.operation.label still doesn't work. 

Do we have any update or alternate to above question?