I've encountered a very weird issue which I was hoping to get some advice on. I've implemented a custom facet in Experience Profile - Sitecore 9.1 which works fine. On my environment there's no problem at all. However after it was deployed to test, for the part of the contacts (added before and after my changes) standard First Name field is not present in the Experience Profile. It's not consistent: sometimes the first name is back for a specific contact but most of the times it's not there. At the same time all of the contacts have their first name visible in List Manager.
I've tried rebuilding the xDB search index, that didn't help.
Here's what it looks like in Experience profile:
Update: Here’s more details on the facet I added: I needed it to reflect a specific choice that user makes when they fill out the form i.e. chooses a puppy in the puppy voting contest.
Here’s the config I used to have it working & displayed in the profile:
<sitecore>
<dataAdapterManager defaultProvider="xconnect">
<providers>
<add name="xconnect" type="Sitecore.Analytics.XConnect.DataAccess.XConnectDataAdapterProvider, Sitecore.Analytics.XConnect" fallbackProvider="mongo">
<facets hint="raw:AddFacet">
<facet facetKey="ChosenPuppy" />
</facets>
</add>
</providers>
</dataAdapterManager>
<xconnect>
<runtime type="Sitecore.XConnect.Client.Configuration.RuntimeModelConfiguration,Sitecore.XConnect.Client.Configuration">
<schemas hint="list:AddModelConfiguration">
<schema name="PuppyFacetModel" type="Sitecore.XConnect.Client.Configuration.StaticModelConfiguration,Sitecore.XConnect.Client.Configuration" patch:after="schema[@name='collectionmodel']">
<param desc="modeltype">AcmeCorporation.Feature.TestFeature.Models.ChosenPuppyFacet.PuppyFacetModel, AcmeCorporation.Feature.TestFeature</param>
</schema>
</schemas>
</runtime>
</xconnect>
</sitecore>
public class PuppyFacet: Facet
{
public const string FacetName = "ChosenPuppy";
public const string FacetFriendlyName = "Chosen Puppy";
public string ChosenPuppy { get; set; }
}
Here’s a json file deployed to:
- xconnect instance roost path\App_Data\Models
- xconnect instance root path\App_Data\jobs\continuous\IndexWorker\App_data\Models
https://gist.github.com/epetrashen/3ff4a920496ddffda2c2528aa9064bda (sorry for the link, I could not get the json to display in the proper formatting if I paste it and try to show as code)
I use EPEXpress tab to display the facet content in Contact Card. I also added it to the .csv export using the way described here: Export all information related to Contacts using List Manager