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
Opret et nyt custom field som normalt.
Vælg typen SmartField.
Træk feltet ind (drag & drop).
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
Number (tal)
Bruges ved beregninger
Kan evt. bruges videre i andre SmartFields
String (tekst)
Bruges ved tekstsammensætning
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.
