Ofte stillede spørgsmål om beregninger for produktkonfigurationsmodeller

Denne artikel beskriver beregninger for produktkonfigurationsmodeller, og hvordan du bruger beregninger sammen med begrænsninger.

Beregninger kan bruges til aritmetiske eller logiske operationer. De supplerer udtryksbegrænsninger i produktkonfigurationsmodeller. Du kan definere beregninger på siden Detaljer om begrænsningsbaseret model til produktkonfiguration og derefter oprette udtryk til beregninger i udtrykseditoren. Yderligere oplysninger finder du i Opret beregninger.

Hvad er en beregning?

En beregning er et element, som du kan bruge i en produktkonfigurationsmodel. Beregninger supplerer begrænsninger ved at give dig mulighed for at bruge decimaltal til beregne værdier, når du konfigurerer et produkt. Derudover har beregninger et større udvalg af tilgængelige operatorer end begrænsninger har.

På samme måde som en begrænsning er en beregning knyttet til en bestemt komponent i en produktkonfigurationsmodel, og den ikke kan genbruges af eller deles med en anden komponent. En vigtig forskel mellem beregninger og begrænsninger er, at beregningerne er imperative (envejs), hvorimod begrænsninger er deklarative (tovejs). Få yderligere oplysninger om begrænsninger under Udtryksbegrænsninger og tabelbegrænsninger i modeller for produktkonfiguration.

En beregning består af en målattribut og et beregningsudtryk.

Hvad er en målattribut?

En målattribut er en attribut, der modtager resultatet af beregningsudtrykket.

I følgende udtryk er målattributten er en måling af en dug:

Udtryk: If[decimalAttribute1 <= decimalAttribute2, True, False]

DecimalAttribute1 er bordets længde, og decimalAttribute2 er dugens længde. Udtrykket returnerer værdien True til målattributten, hvis decimalAttribute2 er større end eller lig med decimalAttribute1. Ellers returnerer udtrykket værdien False. Målingen af dugen er derfor acceptabel, hvis dugens længde er lig med eller overstiger bordets længde.

Hvilke attributtyper kan angives til målattributter?

Alle attributtyper, der understøttes til variantstyring, kan angives til målattributter undtagen tekst uden en fast liste.

Kan en værdi for en målattribut begrænse værdierne for inputattributterne i en beregning?

Nej, værdien for en målattribut kan ikke begrænse værdierne for inputattributterne, fordi beregningerne er envejs. Værdien for målattributten indstilles derfor på grundlag af ændringer i værdien af inputattributterne, men en ændring i værdien af målet påvirker ikke værdien af inputattributterne. Denne funktionsmåde adskiller sig fra funktionsmåden for begrænsninger. Begrænsninger forekommer i begge retninger.

Eksempel

I følgende udtryk er målet for beregningen længden af en netledning, og inputværdien er en farve:

Udtryk: [If Color == "Green", 1.5, 1.0]

Når du konfigurerer varen, er længden på netledningen 1,5, hvis du angiver Grøn som værdi for farveattributten. Hvis du angiver en anden farve, konfigureres længden til 1,0. Men da beregninger er envejs, angiver beregningen ikke værdien af farveattributten til Grøn, hvis du angiver en længde på 1,5.

Hvad sker der, hvis en beregning har en målattribut af typen heltal, men en beregning giver et decimaltal?

Hvis en målattribut er af heltalstypen, men en beregning genererer et decimaltal, returneres kun heltalsdelen af det beregnede resultat. Decimaldelen fjernes, og resultatet afrundes ikke. Resultatet 12,70 vises f.eks. som 12.

Hvornår foretages der beregninger?

Beregninger foretages, når der er angivet en værdi for alle inputattributter.

Kan jeg overskrive den værdi, der er beregnet for målattributten?

Du kan overskrive den værdi, der beregnes for målattributten, medmindre målattributten er angivet som skjult eller skrivebeskyttet.

Hvordan angiver jeg en målattribut som skjult eller skrivebeskyttet?

Hvis du vil angive en attribut som skjult eller skrivebeskyttet, skal du følge disse trin.

  1. Gå til Administration af produktoplysninger>Produkter>Produktkonfigurationsmodeller.
  2. Vælg en produktkonfigurationsmodel, og derefter skal du i handlingsruden klikke på Rediger.
  3. Vælg en attribut, der skal bruges som en målattribut på siden Detaljer om begrænsningsbaseret model til produktkonfiguration.
  4. På oversigtspanelet Attributter skal du vælge Skjult eller Skrivebeskyttet.

Kan en beregning overskrive de værdier, jeg angiver?

Nej De værdier, du angiver, når du konfigurerer et produkt, er de værdier, der bruges. Den beregning, der foretages, når inputværdierne i en beregning er ændret, kan ikke overskrive de værdier, du angiver for en bestemt attribut.

Hvad sker der, hvis jeg fjerner en inputværdi i en beregning?

Hvis du fjerner en inputværdi i en beregning, fjernes også værdien af målattributten.

Hvorfor får jeg en fejlmeddelelse, der siger, at min model er i konflikt?

Denne meddelelse vises, når en beregning indeholder en fejl, eller når der findes en konflikt i en eller flere begrænsninger. Få yderligere oplysninger om konflikter i begrænsninger under Udtryksbegrænsninger og tabelbegrænsninger i modeller for produktkonfiguration. Her er nogle situationer, hvor der kan opstå fejl i beregningerne:

  • En værdi divideres med 0 (nul).
  • Der findes en konflikt mellem følgende to elementer:
    • De værdier, der er tilgængelige for en attribut, og som er begrænset af en begrænsning
    • En værdi, der er genereret af en beregning
  • De værdier, der returneres af beregningen, er uden for attributtens domæne. Et eksempel er et heltal fra [1..10], som er beregnet til 0.

Hvorfor får jeg en fejlmeddelelse, selvom jeg har valideret min produktmodel?

Beregninger er ikke inkluderet i valideringen. Du skal teste produktkonfigurationsmodellen for at finde fejl i beregninger. Følg disse trin for at teste en produktkonfigurationsmodel.

  1. Gå til Administration af produktoplysninger>Produkter>Produktkonfigurationsmodeller.
  2. Vælg en produktkonfigurationsmodel, og derefter skal du i handlingsruden klikke på Test i gruppen Kør.