Can processing rules be applied to concatenate merchandising evar to context data? | Community
Skip to main content
irina_timoshuk1
Level 2
October 16, 2015
Solved

Can processing rules be applied to concatenate merchandising evar to context data?

  • October 16, 2015
  • 14 replies
  • 8885 views

Hi everyone, 

Could you please help me debug the following issue with using merchandising and context vars in the processing rule? 

We are passing one conversion variable (evar63) as a merchandising var in the s.products:

s.products = “Category; SKU;;;event85=1;evar63=’id_1’"

ON the same s.t() call, we are passing the current date via context variable ('currdate'):

s.contextData["currdate"] = new Date().toMMDDYYYYString();

Then, we would like to overwrite the original value of evar63 with the concatenated values of evar63 and context data (currdate). The processing rule is:

- If evar63 is Set, then  Overwrite value of evar63 To Concatenated Value of evar63, currdate(Context Data) using a pipe (|) delimiter.

Unfortunately, this setup didn't work and we are still getting the original, not concatenated values in the evar63 report.

I was confused because the Help section mentioned, 'The product string, referrer, and user agent cannot be changed' (http://microsite.omniture.com/t2/help/en_US/reference/processing_rules_about.html). 

Is merchandising evar should be considered a part of product string and can NOT be altered? The Customer Care rep assured it can be since it is available in the drop-down menu of the processing rule. 

Did anyone tried to use merchandising var and context data in the same processing rule?

Thank you!

irina

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Best answer by irina_timoshuk1

Harry, do you remember if your Merchandising evar used Product Syntax or Conversion variable syntax?

I've got Client Care confirmation that merchandising evar set up with Product Syntax can not be used in the processing rules to overwrite another variable.

thanks!

irina

14 replies

irina_timoshuk1
Level 2
October 16, 2015

Hmmm, that's quite unfortunate :-(. I can't really set the concatenated value of evar63 and the current date into s.products. It will break all s.products & image request character limits. And i absolutely need these ids be processed with the dates because it will be used for the date-specific classifications.

OK, one more workaround theory (and a question). If i pass the incrementor event to s.events, set merchandising evar63 into s.products, pass another empty evar64 on the same call and then - copy the merchandising evar's value to the new evar64 concatenated with the current date - will the event allocation be saved?

Something like this:

s.events="prodView, event85=1"

s.products="Category;SKU;;;;evar63=id_1"

s.evar64="[null or dummy value]"

 

Also - if i set event85=1 in s.events, it will be applied to all products in the s.products string. And i'd like to avoid it. What would be the best way to have event85 in s.events and not applicable to all products?

s.events="prodView, event85=1"

s.products="Category;SKU;;;;evar63=id_1,

                   Category;SKU_2;;;event85=0"

or

s.events="prodView, event85=1"

s.products="Category;SKU;;;;evar63=id_1,

                   Category;SKU_2;;;event85=-1"

Does event85=0 passed in s.products overwrite event85=1 passed in s.events? 

Or - can negative numbers be passed as numeric events? Will event85=-1 (passed into s.products) zero out event85=1 (passed in s.events)? 

What is the best way to zero out the total value of a numeric event per certain evar?

Thanks!

irina

Adobe Employee
October 16, 2015

Hi Irina,

It is less an issue with merchandising eVars and more the current limitation with processing rules to alter the product string. You are right to be concerned with the workaround as it will not work in the manner you intend since eVar64 will be outside the product string and the event allocation will be off. The only course I see forward is setting the eVar63 value to the exact value you want it to be within the product string from the start.

Best,

Brian

irina_timoshuk1
Level 2
October 16, 2015

Brian, thank you

I wish merchandising evars could me manipulated via processing rules.

Well, i'm testing the workaround with an additional variable. I assumed that the value of a merchandising evar can still be copied to another evar via processing rules. Is my assumption correct? 

So, we are passing the merchandising evar in the s.products on s.t() call together with a context data variable:

s.products="Category;SKU;;;event85=1;evar63=id_1"

s.contextData["currdate"]=new Date();

Then, i copy the value of evar63 to a new evar64 concatenated with context 'currdate' via processing rule:

- If evar63 is set, then Overwrite value of evar64 to Concatenated Value of evar63, currdate(Context Data) using a pipe (|) delimiter.

I'm concerned about the events allocation though.... Will the incrementing events (event85 in the s.products string) allocate to evar63 be still allocated to the new evar64?

Thanks!

irina

Adobe Employee
October 16, 2015

Hi Irina,

Processing rules cannot alter any part of the product string. The outlined approach will not work at this time through processing rules. The below statement is correct form the Help site:

http://microsite.omniture.com/t2/help/en_US/reference/processing_rules_about.html

The product string, referrer, and user agent cannot be changed.

Referrer and user agent are read-only. The product string is not available.

Best,

Brian