DOCS

Rules

Avancerede regler

COMING SOON

Zonos understøtter avanceret tilpasning af, hvordan beregninger sker på din konto, gennem brug af regler. Regler kan bruges til at tilføje buffere til forskellige dele af beregningen, tilpasse gebyrer og mere. For en fuld gennemgang af, hvordan Zonos håndterer regler, inklusive en liste over alle mulige regeltyper, se vores regel-dokumentation. Regler kan administreres via Zonos Dashboard eller gennem GraphQL API.

Vigtigt: Regler er en avanceret funktion, og misbrug kan forårsage en række utilsigtede konsekvenser for, hvordan Zonos opfører sig og beregner for dig.

For at administrere regler i Dashboard:

  1. Log ind på din Zonos Dashboard-konto.
  2. Gå til Settings -> Rules.

På siden „Rules“ kan du se alle regler tilknyttet din Zonos-konto, filtrere regler og hurtigt aktivere eller deaktivere regler.

For at oprette en ny regel i Dashboard:

  1. Log ind på din Zonos Dashboard-konto.
  2. Gå til Settings -> rules.
  3. Klik på Create rule.
  4. Giv din regel et navn, så du kan identificere den senere. Dette er kun synligt for teammedlemmer i din organisation.
  5. Følg trinene i afsnittet „Angiv regelbetingelse“ nedenfor for at tilføje en betingelse til din regel.
  6. Følg trinene i afsnittet „Angiv regelhandling“ nedenfor for at tilføje en handling til din regel.
  7. Du kan eventuelt tilføje en kommentar for yderligere kontekst. Dette er kun synligt for teammedlemmer i din organisation.
  8. Følg trinene nedenfor for at tilføje en bestemt start- og/eller slutdato for din regel (valgfrit).
  9. Sæt din regel til enten Enabled eller Disabled.
  10. Klik på Save.

Angiv start- og slutdatoer

Regler kan valgfrit have en startdato, en slutdato eller begge dele. Start- og slutdatoer styrer, hvornår og hvordan din regel bliver aktiv, og kan bruges til at oprette regler, der kun er aktive i bestemte perioder, f.eks. sæsonrabatter eller andre tidsbegrænsede situationer.

Regeladfærd

DatoerAdfærd
Start- og slutdatoReglen er aktiv mellem den angivne start- og slutdato.
Kun en startdato, ingen slutdatoReglen bliver aktiv efter den angivne startdato og skal deaktiveres manuelt.
Ingen start- eller slutdatoReglen er altid aktiv, medmindre den deaktiveres manuelt.

Angiv regelbetingelse

Hver regel kræver, at der angives en betingelse for at bestemme, hvad den gælder for, og hvilke variabler der er tilgængelige, når reglen kører. Med andre ord afgør betingelsen, om reglen overhovedet skal køre, og hvornår. Forskellige betingelser har forskellige tilgængelige indstillinger.

For eksempel, hvis du vælger „Shipping carrier“ som betingelse, kan du desuden vælge hvilken transportør der indgår i betingelsen — noget du kan bruge, hvis du opsætter en buffer, der kun skal gælde for en bestemt transportør.

Regler understøtter kun én betingelse hver og understøtter ikke kompleks logik som „else if“, „and/or“ eller lignende. Hvis du vil kæde regler sammen, er det bedst at overveje, hvordan du kan opnå den samme logik med flere regler i stedet for én stor, kompleks regel.

Angiv regelhandling

En regels handling er det, der sker, når dens betingelse er opfyldt. Ligesom med betingelser findes der en række mulige handlinger, hver med forskellige indstillinger.

Hvis du for eksempel kun vil tilføje en buffer til en bestemt transportør, skal du sætte handlingen til „apply a buffer“ og angive bufferens beløb samt hvad den gælder for. Du kan derefter styre præcis hvilken transportør bufferen gælder for, ved at angive det i reglens betingelse.

Ligesom med betingelser understøtter regler kun én handling hver. Hvis du ønsker flere handlinger, er det bedst at overveje, hvordan du kan opnå den samme logik med flere regler i stedet for én stor, kompleks regel.

Det er ikke muligt at opdatere regler direkte, som vores system fungerer i dag. Det skyldes, at vi skal bevare en sporbar historik over, hvilke regler der blev anvendt i hvilke situationer, og hvad reglen gjorde, da den kørte. I stedet kan du arkivere og genoprette en regel med de ændrede værdier, hvilket reelt svarer til en „opdatering“ af reglen.

Dette eksempel på en mutation viser, hvordan du kan kombinere mutationerne ruleArchive og ruleCreate for at opnå denne funktionalitet:

1mutation ruleUpdate(
2$ruleId: ID!
3$action: String!
4$condition: String!
5$context: String!
6$description: String!
7$name: String!
8) {
9 ruleArchive(id: $ruleId)
10 ruleCreate(
11 input: {
12 action: $action
13 condition: $condition
14 context: $context
15 name: $name
16 description: $description
17 }
18 ) {
19 id
20 action
21 context
22 condition
23 }
24}

Når en regel er tilføjet, kan den nemt aktiveres eller deaktiveres for at afgøre, om den skal påvirke dine beregninger. Manuel aktivering eller deaktivering af en regel tilsidesætter enhver logik baseret på start- og slutdato i reglen.

Regler kan aktiveres eller deaktiveres én ad gangen fra skærmen „Edit a rule“, eller samlet ved at bruge afkrydsningsfelterne ud for hver regel på skærmen „All rules“.

Vi tilbyder nogle globale forespørgsler til håndtering af regler, som er nyttige til at finde ud af, hvordan regler fungerer under motorhjelmen, opbygge brugergrænseflader oven på regler osv. Disse gælder for alle brugere, er ikke organisationsspecifikke og tilbydes for nemheds skyld. Denne forespørgsel returnerer en liste over alle mulige kontekster, som regler kan tilhøre. En regelkontekst afgør, hvornår en regel kører, og hvilke variabler der er tilgængelige.

1query {
2 ruleContexts {
3 name
4 context
5 variables {
6 ruleTokenType
7 value
8 }
9 }
10}
Book en demo

Var denne side nyttig?