Spring videre til hovedindholdet

Sådan laver du udregninger med SmartFields i prduct.com

Sådan arbejder du med dynamiske felter og formler i prduct.com

Andreas Stensig avatar
Skrevet af Andreas Stensig
Opdateret i denne uge

SmartFields er dynamiske felter, der automatisk beregner eller sammensætter data baseret på andre felter. De bruges til fx prisberegninger, vægtudregning, tekstkombinationer og integrationsdata.

Når input ændres, opdateres SmartFieldet automatisk og vises som et read-only resultat.

Video gennemgang (på engelsk)

Forberedelse: Opret inputfelter først

Inden du laver et SmartField, bør du oprette de felter, som skal bruges som input. Et SmartField skal have nogle input felter, hvis de ikke allerede eksisterer, så anbefaler vi at man opretter dem på forhånd.

Eksempel:

  • Felt 1: Pris

  • Felt 2: Moms

  • SmartField: Beregner pris inkl. moms

Det er muligt at bruge felter, der endnu ikke findes, hvis man kender deres navne – men det er nemmere at oprette dem først.

Opret et SmartField

  1. Opret et nyt custom field som normalt.

  2. Vælg typen SmartField.

  3. Træk feltet ind (drag & drop).

  4. Klik på tandhjulet eller feltet for at åbne indstillingerne.

Herefter kan du konfigurere SmartFieldet.

Grundlæggende indstillinger

I SmartFieldets indstiller skal du sætte følgende:

Label name. Det navn brugeren ser.Bruges kun til visning.

Model name. Bruges internt i systemet. Har primært teknisk betydning.

Disse to er ikke kritiske for funktionaliteten. Efterfølgende skal vælge mode:

Vælg SmartField-mode (Expression / Template)

Du skal vælge, hvordan feltet skal fungere:

Template = String (tekst)

Bruges når:

  • Du vil sammensætte tekst.

  • Du vil kombinere værdier som tekst.

Eksempel:

{{Feltnavn1}} {{Feltnavn2}}

Her vises bare teksten. Ingen beregning foretages.

Tip: Brug "Insert attribute" til at vælge en konkret attribut og indsætte den i formlen.

Du kan altså kombinere felterne som du ønsker, hvis du indsætter eks. mellemrum eller tegn, så vises det som en del af teksten.

Vær obs på at attributten skal have {{ og }}.

Expression = beregning (tal)

Bruges når:

  • Du vil lave beregninger.

Understøtter følgende beregninger:

  • Plus = +

  • Minus = -

  • Gange = *

  • Divider = /

  • Paranteser = ()

Eksempler:

[Pris]*[Moms]
[Vægt1]+[Vægt2]
([Pris]+[Gebyr])*2
[Antal]/[Vægt]

Tip: Brug "Insert attribute" til at vælge en konkret attribut og indsætte den i formlen.

Vær obs på at attributten skal have [ og ].

Vælg Output-type

Du skal vælge, hvad SmartFieldet skal returnere:

Mulige output-typer

  1. Number (tal)

    • Bruges ved beregninger

    • Kan evt. bruges videre i andre SmartFields

  2. String (tekst)

    • Bruges ved tekstsammensætning

  3. JSON

    • Bruges primært til integrationer

    • Systemet sikrer korrekt formatering

JSON bruges fx til integration med eksterne systemer, så man slipper for manuelt at skrive JSON-strenge.

Outputtet lander I SmartFieldet, så der vil det givne resultat vises.

Indsæt attributter i formularen

Når du opretter SmartFieldet, kan du vælge dine inputfelter fra en dropdown.

Felterne indsættes som attributter i formlen.

Ved String

  • Felter indsættes direkte

  • Du kan skrive mellemrum, tekst og tegn imellem

Eksempel:

{{Navn}} {{Kategori}}

Ved Math / Expression

  • Felter indsættes i square brackets

Eksempel:

[Weight]*[Quantity]

Placering og opdatering

  • Resultatet vises direkte i SmartFieldet.

  • Der oprettes ikke et ekstra felt.

  • SmartFieldet er read-only (kan ikke redigeres manuelt).

  • Det opdateres automatisk, når inputfelter ændres.

Systemet “holder øje” med inputfelterne og genberegner automatisk.

Krav: Felterne skal ligge på samme dokument/entitet for at kunne bruges sammen.

Ændringer i eksisterende SmartFields

Du kan sagtens ændre i SmartFields output-type og mode på et eksisterende SmartField, men vær obs på evt. ændringer i formatteringen og om attributter er skrevet i {{ og }} eller [ og ].

Dog skal du være varsom med at ændre i type af input feltet. Så hvis du eks. har et input felt som er tekst, at ændre det til et tal felt kan give fejl. Her anbefaler vi generelt på tværs at oprette et nyt felt.

Eksempler på SmartField opsætninger

Pris inkl. moms

Input:

  • Pris

  • Moms

Formel:

[Pris]*[Moms]

Output: Number

Emballagevægt

Input:

  • Weight

  • Quantity

Formel:

[Weight]*[Quantity]

Sammensat tekst

Input:

  • Produktnavn

  • Variant

Formel:

{{Produktnavn}} {{Variant}}

Output: String

JSON til integration

Input:

  • Flere attributter

Output: JSON
Systemet sørger for korrekt format.

Alternative løsninger til betingelser

Hvis du har behov for afhængige felter (fx HS-kode → beskrivelse):

Det håndteres ikke i SmartField. Brug i stedet business rules

Dette nævnes som separat funktionalitet.

Besvarede dette dit spørgsmål?