Yksi tapa varmistaa tiedon laatu on lisätä rajoitteita lomakkeen kenttiin. Rajoitteet estävät käyttäjiä syöttämästä virheellisiä tai mahdottomia vastauksia. Esimerkiksi henkilön tuloja kysyttäessä haluat välttää epärealistisia arvoja, kuten negatiivisia lukuja tai erittäin suuria arvoja. Tietorajoitteiden lisääminen lomakkeeseen on helppoa. Noudata yksinkertaisesti alla olevia ohjeita:

  1. Lisää lomakkeeseen uusi sarake nimeltä “constraint”.
  2. Kirjoita “constraint”-sarakkeeseen kaava, joka määrittää vastauksen rajat.

Esimerkki

Tarkastellaan esimerkkiä, jossa haluamme lisätä rajoitteen henkilön tuloille. Rajoite edellyttää tulojen olevan välillä 0 ja 1 000 000 dollaria. Näin voit asettaa rajoitteen:

nameconstraint
Income. >= 0 & . <= 1000000

Yllä olevassa esimerkissä “.” kaavassa viittaa takaisin kysymysmuuttujaan, joka edustaa käyttäjän syöttämää arvoa “Income”-kysymykseen. Rajoite “. >= 0 && . <= 1000000” varmistaa, että syötetty tulo on suurempi tai yhtä suuri kuin 0 ja pienempi tai yhtä suuri kuin 1 000 000.

Kova rajoite

Kova rajoite estää lomakkeen lähettämisen kokonaan, jos syötetty arvo ei täytä lauseketta. Luetteloija ei voi edetä ennen kuin hän syöttää kelvollisen arvon.

Lisätäksesi kovan rajoitteen, kirjoita lausekkeesi constraint-sarakkeeseen. Halutessasi lisää ihmisluettava viesti constraint_message-sarakkeeseen:

typenamelabelconstraintconstraint_message
integerageVastaajan ikä. > 0 and . <= 120Iän tulee olla välillä 1 ja 120
decimaltemperatureKehon lämpötila (°C). >= 35 and . <= 42Lämpötilan tulee olla välillä 35°C ja 42°C
textphonePuhelinnumeroregex(., '^[0-9]{10}$')Syötä 10-numeroinen puhelinnumero

Useita ehtoja

Yhdistä ehtoja and- / or-operaattoreilla:

  . >= 0 and . <= 100
  
  . = 'yes' or . = 'no'
  

regex()-funktion käyttäminen mallivalidointiin

regex(value, pattern)-funktio testaa arvon säännöllistä lauseketta vasten:

typenamelabelconstraintconstraint_message
textemailSähköpostiosoiteregex(., '^[^@]+@[^@]+\.[^@]+$')Syötä kelvollinen sähköpostiosoite
textzip_codePostinumeroregex(., '^[0-9]{5}$')Syötä 5-numeroinen postinumero

Muiden kenttien viittaaminen rajoitteessa

Käytä ${fieldname} viitataksesi muiden kysymysten arvoihin:

typenamelabelconstraintconstraint_message
integerend_yearPäättymisvuosi. >= ${start_year}Päättymisvuoden on oltava aloitusvuoden jälkeen
decimalloan_repaidMaksettu summa. <= ${loan_amount}Ei voida maksaa enemmän kuin lainasumma

Pehmeä varoitus

Pehmeä varoitus (kutsutaan myös pehmeäksi rajoitteeksi tai varoitukseksi) varoittaa luetteloijaa, että arvo näyttää epätavalliselta, mutta antaa silti edetä. Tämä on hyödyllistä, kun arvo on teknisesti kelvollinen mutta tilastollisesti epätodennäköinen.

Yleisin malli on käyttää note-kenttää relevant-lausekkeen kanssa merkitsemään epäilyttävä arvo, yhdistettynä acknowledge-kysymykseen vahvistamiseksi:

typenamelabelrelevant
integerchildrenLasten lukumäärä
notechildren_warningVaroitus: Syötit ${children} lasta. Vahvista, että tämä on oikein.. > 15
triggerchildren_confirmVahvista, että lasten lukumäärä on oikein${children} > 15

Pehmeä varoitus vain constraint_message:lla

Yksinkertaisemman pehmeän varoituksen saamiseksi voit muotoilla rajoitteen varoittamaan äärimmäisistä arvoista, mutta sallia silti laajan alueen:

typenamelabelconstraintconstraint_message
integerchildrenLasten lukumäärä. >= 0 and . <= 30Tämä arvo vaikuttaa erittäin suurelta. Tarkista.
Oliko tämä sivu hyödyllinen?