내 커뮤니티 업적 표시줄을 확대합니다.

Join us on September 25th for a must-attend webinar featuring Adobe Experience Maker winner Anish Raul. Discover how leading enterprises are adopting AI into their workflows securely, responsibly, and at scale.

Mark Solution

활동이 없어 이 대화는 잠겼습니다. 새 게시물을 작성해 주세요.

해결됨

Map listvars to custom schema fields in Adobe Analytics source connector

Avatar

Level 2

We are trying to ingest Adobe Analytics report suite data into AEP via the Adobe Analytics source connector.

 

Using the custom mapping interface, it is for most cases fairly straight forward to map the "_experience" fields to the corresponding fields in our own "_tenant" custom fields collection.

 

Even for listprops it is fairly easy to create a calculated field, that creates a string of values to be used in CJA - for example this listprop:

join("|",_experience.analytics.customDimensions.listProps.prop34.values)

 

However for listvars this is not possible. First off, because there is no "values", there is only only the following available, which not permitted in the calculated field interface:

_experience.analytics.customDimensions.lists.list1.list[*].value

 

I have tried to just include the list:

join(",",_experience.analytics.customDimensions.lists.list1.list)

 

But that returns the full object in CJA, which is not ideal for reporting purposes - example:

{value=listvar-item1}

I even tried to use the "get" function not documented anywhere, but used in an example on the "Data Prep Mapping Functions" documentation page:

join("|",(_experience.analytics.customDimensions.lists.list1.list).get("value"))

But that does not work - it does not return any values.

 

If I had more array/object/string functions at my disposal I could work something out, but I rather stuck at the moment.

 

The standard mapping for the listvars (_experience.analytics.customDimensions.lists.list1.list => _experience.analytics.customDimensions.lists.list1.list), works just fine out of the box, and will return the individual elements as expected and shown in Adobe Analytics:

listvar-item1

Has anyone else successfully mapped the "_experience" listvars to custom fields only including the values, or perhaps someone from Adobe can assist? Or perhaps someone can share how the standard mapping works, and we can re-use that for the custom mapping?

Thank you in advance 🙂

1 채택된 해결책 개

Avatar

정확한 답변 작성자:
Level 2

I solved the issue myself, by utilising the "replacestr" function (twice) to remove the redundant information, both in the beginning and the end of the individual objects:

replacestr((replacestr((join(",",to_array(true,_experience.analytics.customDimensions.lists.list1.list))),"{value=","")),"}","")

First I convert the object to an array and to a string, next I replace every occurrence of "{value=" from the string, and afterwards I remove the trailing "}" from the string, and finally I have the list in the desired format - from:
"{value=listvar-item1}" to "listvar-item1"

원본 게시물의 솔루션 보기

1 답변 개

Avatar

정확한 답변 작성자:
Level 2

I solved the issue myself, by utilising the "replacestr" function (twice) to remove the redundant information, both in the beginning and the end of the individual objects:

replacestr((replacestr((join(",",to_array(true,_experience.analytics.customDimensions.lists.list1.list))),"{value=","")),"}","")

First I convert the object to an array and to a string, next I replace every occurrence of "{value=" from the string, and afterwards I remove the trailing "}" from the string, and finally I have the list in the desired format - from:
"{value=listvar-item1}" to "listvar-item1"