Loading
Datamanager

Datamanager

Datamanager er tilstandsadministration og orkestreringskomponenten for Produktkonfiguration. Denne komponent lagrer produktdata og bruger forløbsbegivenheder til at udbrede dataene til andre komponenter på forløbsskærmen.

EditionsHeading

Tilgængelig i: Lightning Experience
Tilgængelig i: Enterprise, Unlimited og Developer Edition af Revenue Management (tidligere Revenue Cloud) med Revenue Cloud Growth-licensen eller Revenue Cloud Advanced-licensen

Datamanageransvar

  • Vedligehold transaktionskonteksten og konfigurationstilstanden
  • Kald Configurator API og processvar
  • Behandl Lightning Message Service-hændelser (LMS) fra brugergrænsefladekomponenter
  • Angiv data til brugergrænseflade, og vis reaktive egenskaber til underordnede komponenter
  • Understøtter lagring og indlæsning af favoritkonfigurationer

Data Manager API-navn

S01_DataManager

Egenskaber for datamanagerinput

Datamanager accepterer data fra overordnede eller forløbskomponentegenskaber, der er angivet af brugere.

Egenskab Type Påkrævet Beskrivelse
transactionLineId Streng Ja Rodprodukt eller transaktionslinje-id
currentTransactionLineId Streng Ja Aktuel linje, der vises
transactionId Streng Ja Salgstransaktions-id (tilbud, bestilling osv.)
parentName Streng Ja Navn eller titel på den overordnede transaktion, som konfigurationen vedrører.
oprindelse Streng Ja Navn på transaktionsregistreringens overordnede objekt. Eksempel: "Salgsmulighed", "Tilbud", "Bestilling", "Aktiv" osv. Dette identificerer, hvilken Salesforce-objekttype der starter konfigurationen. Bruges til navigation, brugergrænsefladebetegnelse osv.
addedNodes Opstilling Nej Forløbsressource, der indeholder en samling af Apex ProductConfig__SalesTransactionItem-registreringer, der er tilknyttet den overordnede registreringstransaktion.
isNonBlockingEnabled Boolesk Nej Aktiver ikke-blokeringstilstand. Når det er aktiveret, tillader dette brugere at fortsætte med at interagere med brugergrænsefladen, mens API-kald behandles i baggrunden. Ændringer sættes i kø og behandles asynkront uden at blokere brugergrænsefladen. Når den er deaktiveret, låses brugergrænsefladen under API-kald.
areMessagesFixed Boolesk Nej Om meddelelseskomponenten har en fast position. Når den er sand, forbliver meddelelseskomponenten fast øverst på skærmen og forbliver synlig, mens du ruller (permanent placering). Når falsk, ruller meddelelseskomponenten med sideindholdet (relativ placering). Nyttig til at bevare valideringsfejl/advarsler altid synlige under konfiguration
contextId Streng Nej Id for den transaktionskontekst, der er angivet for Produktkonfiguration
enableARCValidation Boolesk Nej Angiver, om ARC-validering (Asset Renewal Configuration) køres under produktkonfiguration
transactionLineGroupId Streng Nej Id for den gruppe, der indeholder den aktuelle transaktionslinje, der konfigureres. For Tilbud er dette Id for tilbudslinjegruppe. For Bestillinger er dette Id for bestillingselementgruppe.
explainabilityEnabled Boolesk Nej Når Forklarbarhed er aktiveret, leverer Produktkonfiguration detaljerede forklaringer på, hvorfor produkter er skjulte, inaktiverede eller anbefalede. Viser reglerkørselsdetaljer og forretningslogikovervejelser for at hjælpe brugere med at forstå konfigurationsbegrænsninger.
userContext Objekt Nej

API-navn på en forløbsvariabel, der indeholder brugerkvalificeringsdata. Denne variabel er af typen ProductConfig__UserContext og bestemmer produktberettigelse baseret på brugerspecifikke attributter.

1. I Flow Builder skal du oprette et API-variabelnavn, f.eks. userContextData.

2. Brug et Tildelings- eller Hent registreringer-element til at udfylde variablen, og angiv felter som f.eks. rolle, område, accountType osv. F.eks. {!userContextData.role} = {!$User.UserRole.Name}

3. I Datamanager for Brugerkontekst skal du vælge {!userContextData}. Konfigurator-API'en bruger disse data til at evaluere kvalificeringsregler og filtrere, hvilke produkter der er tilgængelige. Hvis du f.eks. har regler som "Vis Enterprise Products only to Enterprise Sales reps", kontrollerer API brugerens rolle fra denne kontekst.

Vælg kun en brugerkontekst, hvis du har produktkvalificeringsregler, der afhænger af brugerspecifikke attributter som rolle, område osv. Hvis alle produkter er tilgængelige for alle brugere, skal du lade dette felt være tomt.

Egenskaber for output for datamanager

Datamanager skriver outputegenskaber, som kunderne kan læse. En intern metode genererer data, og FlowAttributeChangeEvent udsender dataene til den relevante egenskab, som vist i dette eksempel.

this.dispatchEvent(
   new FlowAttributeChangeEvent(FLOW_REACTIVITY_MESSAGES, messages)
);

Denne tabel viser, hvad Datamanager leverer til andre komponenter. Kolonnen Datakilde identificerer den interne proces, der genererer dataene.

Egenskab Datatype Beskrivelse Datakilde
sidehoved Objekt Oplysninger om det aktuelle produktoverskrift mergeContexts()
meddelelser Opstilling Validerings-/fejlmeddelelser API-svar + regler
optionGrupper Opstilling Produktkomponentgrupper (indstillinger) mergeContexts()
attributeCategories Opstilling Produktattributkategorier mergeContexts()
summary Objekt Konfigurationssammendrag (flettet transaktionstræ) mergeContexts()
navigationRoute Opstilling Aktuel navigationssti eller brødkrummer buildNavigationInfo()
searchInfo Opstilling Søgedata for produktkatalog buildSearchInfo()
faner Opstilling Tilgængelige faner for multi-root-pakker buildTabs()
currencyCode Streng Valutakode til prissætning API-svar
transactionRecord Objekt Transaktionsregistreringsdetaljer fillTransactionRecord()
headerTitle Streng Sidehovedtiteltekst generateHeaderTitle()
isInstantPricingToggleEnabled Boolesk Om omgående prisomskifter vises setToggleStates()
isInstantPricingEnabled Boolesk Aktuel øjeblikkelig prissætningstilstand Skift/API
isProductValidationEnabled Boolesk Aktuel valideringstilstand Skift/API
showPrices Boolesk Om der skal vises priser Statslogik
showSummaryTotalSection Boolesk Om afsnittet sammendrag i alt skal vises Forsikringstilsidesættelse
favoritData

Streng (JSON)

Konfigurationsdata for favoritter getFavoriteData()
isConfiguratorDisabled Boolesk Om konfigurator er inaktiveret Tilstand for brugergrænseflade
isApiInProgress Boolesk Om API-kald er i gang API-livscyklus
isPriceRampEnabled Boolesk Om prisramper er aktiveret Kontekstkontrol
isGroupRampEnabled Boolesk Om grupperampler er aktiveret Gruppeberegning
salesTransactionItems Opstilling Alle transaktionselementer API-svar
layoutMode Streng Layouttilstand (standard eller kompakt) Til/fra
searchResultOptionId Streng Id for valgt søgeresultatindstilling Søgenavigation
rootProductId Streng Rodprodukt-id Katalogdata
currentGroupName Streng Aktuelt gruppenavn getCurrentGroupName()
contextMetadata Objekt Kontekstmetadata for attributter for Salgstransaktionselement, der kan tilpasses. Indeholder feltdefinitioner (betegnelser, datatyper, pluklisteværdier) for tilpassede attributter, der kan vises i brugergrænsefladen. Kontekstparsing
eligiblePromotions Opstilling Liste over berettigede kampagner Promoverings-API

Begivenheder, som datamanager lytter til

Datamanager lytter til Lightning Message Service-begivenheder (LMS) og kabeladaptere.

Hvis du vil lytte til LMS-begivenheder, abonnerer Datamanager på meddelelseskanalen og modtager LMS-begivenheder, som andre komponenter har udgivet der. Denne tabel viser LMS-begivenhedshandlinger, deres handlermetoder, og hvad handlingerne gør.

Begivenhedshandling Handlermetode Hvad det gør
valueChange setState() Opdaterer konfigurationstilstand (valg, mængder, attributter)
navigere navigate() Navigerer gennem pakkehierarkiet
closePreview closePreview() Lukker eksempelvisningsvinduet
toggleInstantPricing setInstantPricing() Skifter øjeblikkelig prissætning til/fra
toggleExplainability (Tilgængelighed) setExplainability() Omskifter forklarbarhed til/fra
toggleRulesValidation setProductValidation() Skifter validering til/fra
updatePrices updatePrices() Manuelt udløser prissætning
validateProduct validateProduct() Manuelt udløser validering
cloneItems cloneItems() Duplikerer transaktionselementer
toggleCompactLayout setLayoutModeOnToggle() Skifter layouttilstand
contextDefinitionChanged setContextDefinition() Opdaterer kontekstdefinition
saveFavConfiguration handleSaveConfiguration() Gemmer konfigurationen som favorit
loadFavorite handleLoadFavorite() Indlæs favoritkonfiguration

Wire adaptere lytter automatisk efter dataændringer fra Salesforces platform og overfører dataændringerne til Datamanager. Denne tabel viser de kabeladapterbegivenheder, som Datamanager lytter til.

Trådadapter Kilde Hvad lytter det til Handlermetode Formål
MessageContext Lightning/messageService Meddelelseskontekst for LMS

Ikke relevant (angiver kontekst)

Aktiverer LMS-kommunikation
getContextServiceDefinition Lightning/industrierContextApi Kontekstdefinitionsændringer

gotContextDefinition()

Lytter efter kontekstdefinitionsdata
getObjectInfos (2nd) Lightning/uiObjectInfoApi Oplysninger om transaktionselementobjekt getObjectInfos() Lytter efter transaktionselementmetadata

Begivenhedsdatamanager - brande

Datamanager udløser tilpassede begivenheder, toastbegivenheder og forløbsattributændringsbegivenheder.

Denne tabel viser tilpassede begivenheder for Datamanager-brands, herunder boble- og sammensatte begivenheder.

Begivenhedsnavn Boble Sammensat Når det brænder Formål
indlæsning Ja Ja Under indledende indlæsning Adviser overordnet om indlæsningstilstand
fortsæt Ja Ja Annuller ved rod ELLER luk vindue Luk konfigurator uden at gemme
gem Ja Ja Gem og afslut navigation Gem konfiguration og afslut
close_modal Ja Ja Luk eksempelvisning Luk eksempelvisningsvindue
showConflictToast Ja Ja Ikke-blokerende API-konflikter registreret Vis konfliktadvarselstost

Denne tabel viser toastbegivenheden Datamanager-brands.

Begivenhedsnavn Hvornår er det fyret Formål
ShowToastEvent Efter indlæsning af favorit Adviser bruger om vellykket favoritindlæsning

Datamanager udsender FlowAttributeChange-begivenheder for alle reaktive egenskaber på hver brugergrænsefladeopdatering.

 
Indlæser
Salesforce Help | Article