Databehandling
Databehandling er delstatsbehandling og orkestreringskomponenten for Produktkonfigurator. Denne komponenten lagrer produktdata og bruker flythendelser til å overføre dataene til andre komponenter på flytskjermen.
Nødvendige utgaver
| Tilgjengelig i Lightning Experience |
| Tilgjengelig i Enterprise, Unlimited og Developer Edition av Revenue Management (tidligere Revenue Cloud) med Revenue Cloud Growth-lisensen eller Revenue Cloud Advanced-lisensen |
Databehandlingsforpliktelser
- Vedlikeholde transaksjonskonteksten og konfigurasjonsstatusen
- Kalle opp Configurator API og behandle svar
- Behandle Lightning Message Service (LMS)-hendelser fra grensesnittkomponenter
- Gi data til grensesnittet og vise reaktive egenskaper til underordnede komponenter
- Støtte for lagring og innlasting av favorittkonfigurasjoner
API-navn for Databehandling
S01_DataManager
Inndataegenskaper for Databehandling
Databehandling godtar data fra overordnede eller flytkomponentegenskaper som er angitt av brukere.
| Egenskap | Type | Obligatorisk | Beskrivelse |
|---|---|---|---|
| transactionLineId | Streng | Ja | ID for rotprodukt eller transaksjonslinje |
| currentTransactionLineId | Streng | Ja | Gjeldende linje som vises |
| transaksjons-id | Streng | Ja | Salgstransaksjons-ID (tilbud, bestilling og så videre) |
| overordnetNavn | Streng | Ja | Navn eller tittel på den overordnede transaksjonen som konfigurasjonen gjelder for. |
| opphav | Streng | Ja | Navnet på transaksjonspostens overordnede objekt. Eksempel: Opportunity, Quote, Order, Asset og så videre. Dette identifiserer hvilken Salesforce-objekttype som starter konfigurasjonen. Brukes til navigering, brukergrensesnittetikett og så videre. |
| addedNodes | Matrise | Nei | Flytressurs som inneholder en samling Apex ProductConfig__SalesTransactionItem-poster som er knyttet til den overordnede posttransaksjonen. |
| isNonBlockingEnabled | Boolsk | Nei | Slå på ikke-blokkeringsmodus. Når det er slått på, kan brukere fortsette å samhandle med grensesnittet mens API-kall behandles i bakgrunnen. Endringer legges i kø og behandles asynkront uten at grensesnittet blokkeres. Når grensesnittet er slått av, låses det under API-kall. |
| areMessagesFixed | Boolsk | Nei | Om meldingskomponenten har en fast posisjon. Når true, beholdes meldingskomponenten fast øverst på skjermen og forblir synlig mens du ruller (klem posisjonering). Når false, ruller meldingskomponenten med sideinnholdet (relativ posisjonering). Nyttig for å holde valideringsfeil/advarsler alltid synlige under konfigurering |
| kontekst-id | Streng | Nei | ID-en til transaksjonskonteksten angitt for Produktkonfigurator |
| enableARCValidation | Boolsk | Nei | Angir om ARC-validering (aktivumfornyelseskonfigurasjon) skal kjøres under produktkonfigurasjon |
| transactionLineGroupId | Streng | Nei | ID-en til gruppen som inneholder den gjeldende transaksjonslinjen som konfigureres. For tilbud er dette ID-en til tilbudslinjegruppen. For bestillinger er dette ID-en til bestillingsartikkelgruppen. |
| explainabilityEnabled | Boolsk | Nei | Når forklarbarhet er aktivert, gir Produktkonfigurator detaljerte forklaringer på hvorfor produkter skjules, deaktiveres eller anbefales. Viser detaljer om regelutførelse og forretningslogikk for å hjelpe brukere med å forstå konfigurasjonsbegrensninger. |
| userContext | Objekt | Nei | API-navn på en flytvariabel som inneholder brukerkvalifikasjonsdata. Denne variabelen er av typen ProductConfig__UserContext og bestemmer produktberettigelse basert på brukerspesifikke attributter. 1. Opprett et API-navn for variabelen i Flow Builder, for eksempel userContextData. 2. Bruk et Tildeling- eller Hent poster-element til å fylle ut variabelen og angi felt som rolle, område, accountType og så videre. Eksempel: {!userContextData.role} = {!$User.UserRole.Name} 3. Velg {!userContextData} i Brukerkontekst i Databehandling. Configurator API bruker disse dataene til å evaluere kvalifikasjonsregler og filtrere hvilke produkter som er tilgjengelig. Hvis du for eksempel har regler som "Vis Foretaksprodukter bare til Foretaksselgere", kontrollerer API brukerens rolle fra denne konteksten. Velg en brukerkontekst bare hvis du har produktkvalifikasjonsregler som avhenger av brukerspesifikke attributter som rolle, område og så videre. Hvis alle produkter er tilgjengelig for alle brukere, lar du dette feltet være tomt. |
Utdataegenskaper for Databehandling
Databehandling skriver utdataegenskaper som kunder kan lese. En intern metode genererer data, og FlowAttributeChangeEvent sender dataene til den aktuelle egenskapen, som vist i dette eksempelet.
this.dispatchEvent(
new FlowAttributeChangeEvent(FLOW_REACTIVITY_MESSAGES, messages)
);
Denne tabellen viser hvilke data Databehandling leverer til andre komponenter. Datakildekolonnen identifiserer den interne prosessen som genererer dataene.
| Egenskap | Datatype | Beskrivelse | Datakilde |
|---|---|---|---|
| hode | Objekt | Gjeldende produktoverskriftsinformasjon | mergeContexts() |
| meldinger | Matrise | Validerings- eller feilmeldinger | API-svar + regler |
| optionGroups | Matrise | Produktkomponentgrupper (alternativer) | mergeContexts() |
| attributeCategories | Matrise | Produktattributkategorier | mergeContexts() |
| summary | Objekt | Konfigurasjonssammendrag (flettet transaksjonstre) | mergeContexts() |
| navigeringsrute | Matrise | Gjeldende navigasjonsbane, eller søkebaner | buildNavigationInfo() |
| søkeinformasjon | Matrise | Søke etter data for produktkatalog | buildSearchInfo() |
| faner | Matrise | Tilgjengelige faner for flerrotpakker | buildTabs() |
| currencyCode | Streng | Valutakode for pris | API-svar |
| transactionRecord | Objekt | Transaksjonspostdetaljer | fyll utTransactionRecord() |
| headerTitle | Streng | Overskriftstitteltekst | generateHeaderTitle() |
| isInstantPricingToggleEnabled | Boolsk | Om umiddelbar prisvelger vises | setToggleStates() |
| isInstantPricingEnabled | Boolsk | Gjeldende prisstatus umiddelbart | Bytt/API |
| isProductValidationEnabled | Boolsk | Gjeldende valideringsstatus | Bytt/API |
| visepriser | Boolsk | Om prisene skal vises | Statslogikk |
| showSummaryTotalSection | Boolsk | Om del av sammendrags totalsum skal vises | Forsikringsoverstyring |
| favorittdata | Streng (JSON) |
Konfigurasjonsdata for favoritter | getFavoriteData() |
| isConfiguratorDisabled | Boolsk | Om konfigurator er deaktivert | Grensesnittstatus |
| isApiInProgress | Boolsk | Om API-kall pågår | API-livssyklus |
| isPriceRampEnabled | Boolsk | Om prisramper er aktivert | Kontekstsjekk |
| isGroupRampEnabled | Boolsk | Om grupperamper er aktivert | Gruppeberegning |
| salesTransactionItems | Matrise | Alle transaksjonselementer | API-svar |
| layoutMode | Streng | Oppsettmodus (standard eller kompakt) | Bytte |
| searchResultOptionId | Streng | ID for valgt søkeresultatalternativ | Søke navigering |
| rootProductId | Streng | Rottprodukt-ID | Katalogdata |
| currentGroupName | Streng | Gjeldende gruppenavn | getCurrentGroupName() |
| contextMetadata | Objekt | Kontekstmetadata for tilpassbare Salgstransaksjonselement-attributter. Inneholder feltdefinisjoner (etiketter, datatyper, valglisteverdier) for tilpassede attributter som kan vises i grensesnittet. | Konteksttolking |
| berettigetpromoteringer | Matrise | Liste over kvalifiserte promoteringer | Promoterings-API |
Hendelser som Databehandling overhører
Databehandling lytter etter Lightning Message Service (LMS)-hendelser og kabeladaptere.
For å lytte til LMS-hendelser abonnerer Databehandling på meldingskanalen og mottar LMS-hendelser som andre komponenter publiserer der. Denne tabellen viser LMS-hendelseshandlinger, deres behandlingsmetoder og hva handlingene gjør.
| Hendelseshandling | Handlermetode | Hva den gjør |
|---|---|---|
| valueChange (Verdiendring) | setState() | Oppdaterer konfigurasjonsstatus (valg, mengder, attributter) |
| navigere | navigate() | Navigerer gjennom pakkehierarki |
| closePreview (avslutt forhåndsvisning) | closePreview() | Lukker forhåndsvisningsvindu |
| toggleInstantPrising | setInstantPricing() | Slå på/av umiddelbar pris |
| bytteExplainability | setExplainability() | Slå på/av forklarbarhet |
| toggleRulesValidation | setProductValidation() | Bytter validering på/av |
| updatePrices | updatePrices() | Utløser pris manuelt |
| validateProduct | validateProduct() | Utløser validering manuelt |
| kloneelementer | cloneItems() | Kloner transaksjonselementer |
| bytteCompactLayout | setLayoutModeOnToggle() | Bytter oppsettmodus |
| contextDefinitionChanged | setContextDefinition() | Oppdaterer kontekstdefinisjon |
| saveFavConfiguration | handleSaveConfiguration() | Lagrer konfigurasjon som favoritt |
| loadFavorite | handleLoadFavorite() | Laster inn favorittkonfigurasjon |
Wire-adaptere lytter automatisk etter dataendringer fra Salesforces plattform, og overfører dataendringene til Databehandling. Denne tabellen viser trådadapterhendelsene Databehandling lytter på.
| Wire-adapter | Kilde | Hva det lytter til | Handlermetode | Formål |
|---|---|---|---|---|
MessageContext |
Lightning/messageService | Meldingskontekst for LMS | Ikke relevant (leverer kontekst) |
Aktiverer LMS-kommunikasjon |
getContextServiceDefinition |
Lightning/industrierContextApi | Kontekstdefinisjonsendringer | gotContextDefinition() |
Overhører kontekstdefinisjonsdata |
getObjectInfos (2nd) |
Lightning/uiObjectInfoApi | Informasjon om transaksjonselementobjekt | getObjectInfos() | Overhører for transaksjonselementmetadata |
Hendelsesbranner for databehandling
Databehandling utløser tilpassede hendelser, midlertidige hendelser og endringshendelser for flytattributter.
Denne tabellen viser tilpassede hendelser Databehandling-branner, inkludert boble- og sammensatte hendelser.
| Hendelsesnavn | Bobler | Sammensatt | Når det brenner | Formål |
|---|---|---|---|---|
| laste inn | Ja | Ja | Under første innlasting | Varsle overordnet om innlastingsstatus |
| fortsette | Ja | Ja | Avbryt ved rot ELLER Avslutt vindu | Avslutt konfigurator uten å lagre |
| lagre | Ja | Ja | Lagre og avslutte navigering | Lagre konfigurasjon og utgang |
| close_modal | Ja | Ja | Forhåndsvisning av avslutning | Avslutt forhåndsvisningsvindu |
| showConflictToast | Ja | Ja | Ikke-blokkerende API-konflikter oppdaget | Vis varsel om konflikt |
Denne tabellen viser databehandlingsbrannene i Databehandling.
| Hendelsesnavn | Når er det sparket | Formål |
|---|---|---|
| ShowToastEvent | Etter vellykket innlasting av favoritt | Varsle bruker om vellykket favorittinnlasting |
Databehandling sender FlowAttributeChange-hendelser for alle reaktive egenskaper i hver brukergrensesnittoppdatering.
