Brak danych pola profilu doświadczenia na karcie kontaktu: Imię
Napotkałem bardzo dziwny problem, w sprawie którego miałem nadzieję uzyskać porady. Zaimplementowałem niestandardowy aspekt w profilu doświadczenia - Sitecore 9.1, który działa dobrze. W moim środowisku nie ma żadnego problemu. Jednak po wdrożeniu do testów dla części kontaktów (dodanych przed i po moich zmianach) standardowe pole Imię nie jest obecne w Profilu doświadczenia. To nie jest spójne: czasami imię wraca do konkretnego kontaktu, ale w większości przypadków go tam nie ma. W tym samym czasie wszystkie kontakty mają swoje imię widoczne w Menedżerze list.
Próbowałem odbudować indeks wyszukiwania xDB, ale to nie pomogło.
Oto, jak to wygląda w profilu doświadczenia:

Oto menedżer list:

Aktualizacja: Oto więcej szczegółów na temat dodanego aspektu: potrzebowałem go, aby odzwierciedlić konkretny wybór, którego dokonuje użytkownik, wypełniając formularz, tj. Wybiera szczeniaka w konkursie głosowania na szczeniaki.
Oto konfiguracja, w której działał i wyświetlał się w profilu:
<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; }
}
Oto plik json wdrożony w:
- Ścieżka roost wystąpienia xconnect \ App_Data \ Models
- Ścieżka główna wystąpienia xconnect \ App_Data \ jobs \ continuous \ IndexWorker \ App_data \ Models
https://gist.github.com/epetrashen/3ff4a920496ddffda2c2528aa9064bda (przepraszam za link, nie mogłem wyświetlić pliku json w odpowiednim formatowaniu, jeśli go wkleię i spróbuję wyświetlić jako kod)
Używam zakładki EPEXpress, aby wyświetlić zawartość aspektu na karcie kontaktu. Dodałem go również do eksportu .csv w sposób opisany tutaj: Eksportuj wszystkie informacje związane z Kontaktami za pomocą Menedżera list
Odpowiedzi
W tym konkretnym scenariuszu wydaje się, że Twój niestandardowy aspekt kontaktu jest prawidłowo stosowany i xDB prawidłowo przechwytuje i przechowuje aspekt osobisty, zgodnie z oczekiwaniami.
Sprawy, które sprawdziłeś, aby upewnić się, że działa, obejmują:
- Otwieram Menedżera list i widzę, że kontakty pokazują imię i nazwisko.
- Profil doświadczenia może odczytać imię, o czym świadczy tytuł w profilu doświadczenia.
Wydaje się, że Twój problem może obejmować kod strony trzeciej karty EPEXpress Tab, który wprowadza zmiany w Profilu Doświadczenia, aby działał. Możliwe, że istnieje znany problem z tym modułem, w sprawie którego musisz skontaktować się z programistami.
Jeff Darchuk jest autorem zakładki EPExpress, którą można znaleźć tutaj:https://github.com/JeffDarchuk/EPExpressTab
Problem okazał się być w pliku .cshtml, którego użyłem do wyświetlenia zawartości zakładki w Profilu Doświadczenia - i nawet nie dostałem się pod mój radar, zwrócił mi na to uwagę Sergey z Sitecore Support. Chciałem zachować zawartość na mojej karcie w tym samym stylu, co na karcie „Szczegóły”, więc skopiowałem część znaczników z sekcji Szczegóły i wyglądało to tak:
<div data-sc-id="FirstNameBorder" class="sc-border sc_Border_505 data-sc-registered">
<span data-sc-id="FirstNameLabel" class="sc-text sc_Text_436 data-sc-registered">@Model.PuppyLabel</span>
<span data-sc-id="FirstNameValue" class="sc-text sc_Text_439 data-sc-registered">@Model.PuppyName</span>
</div>
(istnieją style dołączone specjalnie do FirstNameBorder, FirstNameLabel itp.)
Tak więc FirstNameBorder został wyrenderowany dwukrotnie i z tego powodu wystąpiły konflikty.