Johdanto
Conditions ovat tärkeä osa sääntöjen ja toimintojen määrittämistä Rule Enginessä. Rule Enginen advanced mode mahdollistaa monimutkaisempien conditions-määritysten käytön. Ne hyödyntävät operaattoreita, muuttujia, vakioita ja funktioita määrittämään checkout-vaihtoehtoja esimerkiksi painon, ostoskorin arvon ja määränpään perusteella.
Säännöt koostuvat yhdestä tai useammasta conditions-määrityksestä, jotka on yhdistetty actions-toimintoihin. Nämä voivat vaikuttaa kenttiin, lisäosiin tai toimitustapoihin ja määrittävät lopputuloksen, kun conditions täyttyvät. Rule Enginen käyttöliittymä tekee conditions- ja actions-määritysten luomisesta helppoa.
Lisätietoja yleisistä käyttötapauksista löydät artikkelista Rule Enginen käyttö, joka sisältää vaiheittaiset ohjeet basic conditions-määritysten luomiseen.
Tässä artikkelissa keskitytään conditions-määritysten edistyneempiin ominaisuuksiin:
- Advanced view Rule Enginessä
- Luettelo hyväksytyistä operaattoreista
-
Mukautetut parametrit
- Boolean
- Teksti
- Condition lists - Expressions
Advanced view Rule Enginessä
Rule Enginessä voit vaihtaa Advanced mode -tilaan. Tämä tila sisältää yhden tekstikentän ja mahdollistaa conditions-määritysten kirjoittamisen manuaalisesti paremman hallinnan saavuttamiseksi.
Huomaa, että kaikki sisäänrakennetut tai mukautetut parametrit, joita haluat käyttää conditions-määrityksissä, täytyy aktivoida kohdassa Parameters. Lue lisää täältä: Aktivoi parametrit
Esimerkkejä:
vip = trueMukautettu teksti "vip" on yhtä kuin true
cart_price < 100Ostoskorin arvo on alle 100
to_country != "SE"Maa ei ole yhtä kuin Ruotsi
to_postal_code < "10000" and to_country = "SE" and to_postal_code > "20000"Vastaanottajan postinumero on alle 10000 ja vastaanottajan maa on Ruotsi, ja postinumero on alle 20000
cart_price >= 5000 or weight_kg >= 20Ostoskorin arvo on suurempi tai yhtä suuri kuin 5000 tai paino on suurempi tai yhtä suuri kuin 20
weight_kg >= 1.9 or volume_cm3 >= 8000Paino on suurempi kuin 1,9 kg tai tilavuus kuutiosenttimetreinä on suurempi tai yhtä suuri kuin 8000
date > "2025-12-31"Päivämäärä on 31.12.2025 jälkeen
cart_price > 600 and currency = "SEK" and VIP = trueOstoskorin arvo on suurempi kuin 600, valuutta on SEK ja mukautettu parametri VIP on true.
Luettelo hyväksytyistä operaattoreista
Conditions-määritysten kirjoittaminen vaatii operaattoreiden käyttöä:
| Operaattori |
Selitys |
|---|---|
| = | On yhtä kuin |
| != | Ei ole yhtä kuin |
| > | On suurempi kuin |
| >= | On suurempi tai yhtä suuri kuin |
| < | On pienempi kuin |
| <= | On pienempi tai yhtä suuri kuin |
| | or OR | Tai |
| & or AND | Ja |
| ! or NOT | Ei |
| in | Sisältää |
Mukautetut parametrit
Tässä on muutamia esimerkkejä mukautettujen parametrien käytöstä advanced mode -tilassa. Mukautetut parametrit täytyy aktivoida kohdassa Parameters , jotta ne ovat käytettävissä advanced mode -tilassa. Katso Aktivoi parametrit.
Boolean
Mukautetut parametrit voidaan asettaa arvoon true tai false, kuten seuraavissa esimerkeissä:
bulky = true
b2b = true
VIP = false
Teksti
Voit määrittää tekstin, jonka tulee olla olemassa mukautetussa parametrissa. Esimerkkejä:
freightclass = "A"
member = “gold”
type = “nailpolish”
Condition lists
Voit määrittää parametrin condition list -listassa käyttämällä muotoa parametername in "conditionlistname". Esimerkki:
to_postal_code in "zipcodes_zone1"
Lisätietoja condition lists -toiminnosta löytyy tästä artikkelista: Aloittaminen Condition lists -toiminnolla. Artikkeli sisältää osion condition lists -toiminnon käytöstä Rule Enginessä.
Expressions
Expressions toimivat samalla tavalla kuin Conditions, mutta niillä on eri tarkoitus. Conditions palauttavat boolean-arvon (true/false) päättääkseen, tuleeko toiminto suorittaa, kun taas Expressions käytetään asettamaan dynaamisesti arvoja kenttiin, kuten hintoihin tai viesteihin. Expressions täytyy kirjoittaa aaltosulkeiden "{}" sisään.
Esimerkiksi hintakentässä expression voi käyttää requestista saatua mukautettua muuttujaa. Tai toimitusviestin näyttämiseksi voit kirjoittaa:
"Will be delivered on {nextWorkingDayReceiver()}"
Tässä {nextWorkingDayReceiver()} on expression. Aaltosulkeet {} kertovat järjestelmälle, että niiden sisällä oleva sisältö tulee arvioida. Jos funktio palauttaa arvon "Monday", lopullinen viesti on:
"Will be delivered on Monday"
Huomautus: Jos expression palauttaa boolean-arvon (kuten condition), se näytetään tekstinä "true" tai "false", mikä ei välttämättä ole haluttu lopputulos.
Jotkin funktiot ovat käytettävissä vain expressions-määrityksissä eivätkä conditions-määrityksissä, koska ne riippuvat tiedosta siitä, mitä toimitusvaihtoehtoa käytetään — tietoa, joka ei ole saatavilla checkout-tasolla.
| Nimi | Tulostyyppi |
|---|---|
| carrierEtaFromDate | Päivämäärä |
| carrierEtaToDate or carrierEtaDate | Päivämäärä |
| carrierEtaFromDateTime | DateTime |
| carrierEtaToDateTime or carrierEtaDateTime | DateTime |
| carrierEtaFromDay | String |
| carrierEtaToDay or carrierEtaDay | String |
| carrierEtaInterval | String |
| Operaattori |
Selitys |
|---|---|
| + | Yhteenlasku |
| - | Vähennyslasku |
| * | Kertolasku |
| / | Jakolasku |
| % | Modulo |