Processing data after receiving from data layer | Community
Skip to main content
Level 7
February 4, 2021
Solved

Processing data after receiving from data layer

  • February 4, 2021
  • 5 replies
  • 3348 views

we've set "Product ID" as evar7 to capture the product info.

The product id looks like: LAPTOP002001, PC200345, the URL looks like: https://example.com/product/laptop002001

 

Recently, an tech implementation made the URL structure changes: https://example.com/product/laptop002001-dell-xps-13

as a result, server call fires: LAPTOP002001-DELL-XPS-13 to evar7.

Then, in Adobe, we will see 2 values, they are actually same page, same product

evar 7product views
LAPTOP0020031800
LAPTOP002003-DELL-XPS-13150

 

Is there a way in Adobe Analytics process the evar and to classify to same product ID? Or it can only accept what is fired from data layer?

evar 7product views
LAPTOP0020031950

 

Thank you.

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 Brian_Johnson_

@h_l 

If I'm reading your question right, it sounds like you are pulling the product information from the URL (or, your data layer pulls it from the URL and that's what gets passed to Adobe). There are a couple of ways to resolve this without getting your dev team immediately involved, but the "right" approach depends on whether or not you have a tag manager (ie// Launch) in place and have the ability to make changes there.

Option 1, assuming you have access to Launch

Modify the value being passed to eVar7. This could be as simple as creating a data element where you split the value on the dashes and return the first portion. Then use that data element to populate eVar7.

For example, assume your data layer property is named "productName" and is assigned the value "laptop002001-dell-xps-13". In that scenario, the following logic would return "laptop002001", which is what I think you're looking for: productName.split("-")[0];

Option 2

If you don't have access to Launch, and you need to account for both existing data and new data, I'd suggest setting up a classification report based on eVar7. Here you can either create classification rules that use regex to do a similar parsing as above, which would account for any/all new values that come in (and can account for up to 6 months of existing data). Or, you could build a lookup table and upload as a tab-delimited file using the standard classification upload.

5 replies

khurshid
Adobe Employee
Adobe Employee
February 4, 2021

For historical data, the processing rules won't do much. You may take advantage of an upcoming feature in Data Repair APIs which will allow updating values in variables. It will be released later this year.

 

For ongoing data, processing rules cannot split values. Current functionality only allows concatenation. However, you may set static values for specific URLs. Not sure if that will help you much. You can also get a VISTA rule created for this.

CurtisYoung1987
Level 3
February 4, 2021

From what I have see it processes what in datalayer.

 

From the above looks like you are using the page url to set the value in the datalayer.

In implementations I have seen there would be an attribute you allow a user to set to overwrite the url reference (so if product id analytics attribute empty use url - if populated then use populated value).

 

This will allow you to keep historical data if url changes do occur.

 

A second consideration would be making use of segment builder in Workspace to build a segment that looks like:

 

PageID = LAPTOP002001

OR

PagID = LAPTOP002001-DELL-XPS-13

 

This segment can then be used for reporting as it will return the de-duplicated values for metrics in Workspace.

H_LAuthor
Level 7
February 4, 2021

@curtisyoung1987, If it can only be resolved in implementation stage, we have to contact IT again for litter longer processing time, and historical data will not be recovered.

On the other hand, more importantly, the purpose is to evaluate the distinct product ID and rest of metrics/analysis for SEO. As a result, the recommended way - creating segment, would not applicable for batch process for over 10K product ID (adding duplicate will be over 20K).

thanks for your reply, if there is any other recommendation, please share.

Have a safe day.

 

Brian_Johnson_
Brian_Johnson_Accepted solution
Level 8
February 4, 2021

@h_l 

If I'm reading your question right, it sounds like you are pulling the product information from the URL (or, your data layer pulls it from the URL and that's what gets passed to Adobe). There are a couple of ways to resolve this without getting your dev team immediately involved, but the "right" approach depends on whether or not you have a tag manager (ie// Launch) in place and have the ability to make changes there.

Option 1, assuming you have access to Launch

Modify the value being passed to eVar7. This could be as simple as creating a data element where you split the value on the dashes and return the first portion. Then use that data element to populate eVar7.

For example, assume your data layer property is named "productName" and is assigned the value "laptop002001-dell-xps-13". In that scenario, the following logic would return "laptop002001", which is what I think you're looking for: productName.split("-")[0];

Option 2

If you don't have access to Launch, and you need to account for both existing data and new data, I'd suggest setting up a classification report based on eVar7. Here you can either create classification rules that use regex to do a similar parsing as above, which would account for any/all new values that come in (and can account for up to 6 months of existing data). Or, you could build a lookup table and upload as a tab-delimited file using the standard classification upload.

H_LAuthor
Level 7
February 8, 2021

Hi @brian_johnson_, you are exactly answered my questions. Appreciate that.

However, do you mind let me know where I can find the steps to do option 2?

Sorry I have little idea about how to setup classification report.

 

What I am looking for is, to change the value collected in eVar7 and make it can be freely breakdown in any of workspace project.

e.g. the server call is still firing laptop002001-dell-xps-13, but where I can find the step/user guide to guide me setting something then evar7 will only collect laptop002001.

 

About option1, I will try to contact our Adobe Admin.

Thank you for your inputs!

jantzen_b
Adobe Employee
Adobe Employee
February 11, 2021
Do any of the answers below answer your initial question? If so, can you select one of them as the correct answer? If none of the answers already provided answer your question, can you provide additional information to better help the community solve your question?
H_LAuthor
Level 7
February 15, 2021
@jantzen_b thanks for remind. I've accepted a solution.