Expand my Community achievements bar.

Announcement: Calling all learners and mentors! Applications are now open for the Adobe Analytics 2024 Mentorship Program! Come learn from the best to prepare for an official certification in Adobe Analytics.
SOLVED

Batch data processing

Avatar

Level 2

I'm working in a grocery company, and I'm investigating a ticket which is assigned. It is about when clicked on clip coupon there will be server call for each product.  So here there are like 5-6 eVars which are related to it and I need to capture all the eVars when clipped on coupon for n number if there are so. So is it possible can we capture the eVars data for different coupon clips and when navigated to another page this data should fire?

1 Accepted Solution

Avatar

Correct answer by
Community Advisor

List Variables don't have a character limit, each individual item has a 255 character limit.

 

https://experienceleague.adobe.com/docs/analytics/implementation/vars/page-vars/list.html?lang=en

 

So you should be fine to list all your coupons.

 

As for s.products... don't let the "box" define you... I use s.products for 20 different things... only one of which is product related   I use the "category" part of the products notation to indicate the usage.. so in this case, I would start all the coupon "products" as "coupon".

 

My uses include Newsletter Signups (so I can use the merchandising eVars for information such as newsletter name, id, newsletter category, etc), I use it for our Subscription Wall impressions and clicks (where I use different mechandising eVars to track the rule name, rule id, offer name, offer id, type [hardlock or meter lock], etc), I use it for our "Reader's Choice" voting (where I use Merchandising eVars to track the voting category, the business name, id, the person if it's a person level vote etc, I use it for our A/B testing (where I track the test identification, the variant that was in use, etc), and I use it for our subscription purchase flow (tracking the service id, the type of purchase, the discount used if any, etc)

 

Just because its call "products" and someone decided it should be used in one way, the structuring of being able to stitch Merchandising eVars and events is so powerful that I won't limit myself to just one type of data.

View solution in original post

6 Replies

Avatar

Community Advisor

Absolutely, now for an optimal way to so this, having your developers send you data via a data later would be more efficient and reliable... 

 

So on Page A, the user can clip and collect "Coupon A" and "Coupon B" and "Coupon C" for instance, and yes, you could trigger a server call on each click.. but that's a lot of server calls... and if there is a next page for the coupon checkout flow, you might just want to track them as a bundle there (I do this with our newsletter page, I track the final newsletter selections on the "Thank You" page, rather than individual clicks)

 

This however does require a bit of an advanced technique... 

 

Depending on what data you need to collect, you could use a list var, to pass all the information for each coupon with comma (or character of your choice) separators, and each set of data separated by a semi-colon (or a different character of your choice)....

 

You can set up you list delimiter as the character between the sets (i.e. semi-colon), and then use Classifications to break the sets of data up into individual pieces.

 

Or you can use your one and only s.products dimension (Product List), with multiple merchandising eVars set up for each piece of information about the coupon... You can also use numeric merchandising events to pass specific event data.

Avatar

Level 2

I think list var also has byte limit right, how can I pass all those let's say for coupon A  I will be capturing 7 in that way there will be like n. So I'm just thinking on it. And actually there is a separate section for coupons & deals so we will clip from that section so it has nothing to do with product so we can't use s. product I guess.

Avatar

Correct answer by
Community Advisor

List Variables don't have a character limit, each individual item has a 255 character limit.

 

https://experienceleague.adobe.com/docs/analytics/implementation/vars/page-vars/list.html?lang=en

 

So you should be fine to list all your coupons.

 

As for s.products... don't let the "box" define you... I use s.products for 20 different things... only one of which is product related   I use the "category" part of the products notation to indicate the usage.. so in this case, I would start all the coupon "products" as "coupon".

 

My uses include Newsletter Signups (so I can use the merchandising eVars for information such as newsletter name, id, newsletter category, etc), I use it for our Subscription Wall impressions and clicks (where I use different mechandising eVars to track the rule name, rule id, offer name, offer id, type [hardlock or meter lock], etc), I use it for our "Reader's Choice" voting (where I use Merchandising eVars to track the voting category, the business name, id, the person if it's a person level vote etc, I use it for our A/B testing (where I track the test identification, the variant that was in use, etc), and I use it for our subscription purchase flow (tracking the service id, the type of purchase, the discount used if any, etc)

 

Just because its call "products" and someone decided it should be used in one way, the structuring of being able to stitch Merchandising eVars and events is so powerful that I won't limit myself to just one type of data.

Avatar

Level 2

Thanks @Jennifer_Dungan , we did make use of list var to store data and it's a success... now we are trying to fire the stored data when navigated to another screen, I think storage spanner might do this but it is paid version, is there any other suggestions.

Avatar

Community Advisor

hi @harshu24 are you saying that you basically want to carry forward the values to the next screen / to a conversion action?

 

Depending on how you are using your lists, would the attribution expiry be enough? For instance, setting the list expiry to visit will maintain that value for all the rest of the hits in the session (unless it's overwritten).. meaning you don't have to do anything special....

 

If you need something very specific like mapping valueX to conversion A, and valueY to conversion B.. you might need to use something like Products and Merchandising eVars.  


Now, of course, even in the Product notation you would still need to know the product for the merchandising eVars to map in based on the attributed expiry.

 

 

However, you could use (in both scenarios) writing info into a session storage variable? Then you could retrieve the value when needed.


// Save data to sessionStorage
sessionStorage.setItem("key", "value");


// Get saved data from sessionStorage
let data = sessionStorage.getItem("key");

 

I don't know anything about "storage spanner", but setting your own session variables is easy and free... 

Avatar

Level 2

Hello @Jennifer_Dungan ,

Right we are storing data in list var(L3), and we used local storage for 1min time, so for every 1min the stored data of clipped coupons(example user clipped 10 coupons in 1min) will be in local storage and stored in list var. So here the stored data in list var and will be cleared temporarily, we want to get this data stored to get fired on next navigated page.