Betingelser

Betingelser (conditions) brukes til å styre om en regel skal kjøres eller ikke.

Liste over betingelser

Som del av regelmotoren er det definert et sett betingelser som kan brukes til å bestemme om en regel skal kjøres eller ikke. Følgende betingelser er tilgjengelige i Altinns regelmotor.

AnyFieldIsEmpty

Denne blir sann der et av de gitte feltene er tomme.

<Condition type="AnyFieldIsEmpty" check="Skjema/Tilbakebetaling/Krav/Krav1, Skjema/Tilbakebetaling/Krav/Krav2"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma.

AnyFieldIsMissing

Betingelsen er sann dersom et av de gitte felt mangler fra xml-en.

<Condition type="AnyFieldIsMissing" check="orid(33005),orid(33004)"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma.

AnyFieldIsPositive

Blir sann dersom et av de gitte feltene har en positiv verdi.

<Condition type="AnyFieldIsPositive" check="orid(19890),orid(19792),orid(19794)"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma.

AnyFieldHasValue

Betingelsen blir sann hvis et av de gitte feltene har en verdi.

<Condition type="AnyFieldHasValue" check="orid(19890),orid(19792),orid(19794)"/>

Parameter
Parameteren definerer en liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma.

AnyFieldHasValueIgnoreZero

Betingelsen blir sann hvis et av de gitte feltene har en verdi. Tallet 0 blir ikke regnet som en verdi.

<Condition type="AnyFieldHasValueIgnoreZero" check="orid(19890),orid(19792),orid(19794)"/>

Parameter
Parameteren definerer en liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma.

AnyFieldEquals

Er sann dersom et av de gitte felt har en verdi som er lik den gitte verdien.

<Condition type="AnyFieldEquals" check="Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1" value="Ja"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma. value-attributtet definerer verdien feltene sjekkes mot.

AnyFieldNotEquals

Er sann dersom et av de gitte felt har ikke har en verdi som er lik den gitte verdien.

<Condition type="AnyFieldNotEquals" check=" Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1" value="Ja"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma. value-attributtet definerer verdien feltene sjekkes mot.

AnyFieldExists

Er sann dersom et av de gitte feltene i check eksisterer.

<Condition type="AnyFieldExists" check="Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1, Skjema/Utbetaling/Post2, Skjema/Tilbakebetaling/Krav2" />

Parameter
Bruk check for å fortelle hvilke felt som skal sjekkes.

CodeExistsInCodelist

Brukes til å sjekke om en verdi finnes i en kodeliste

<Condition type="CodeExistsInCodelist" check="orid(33)"/>

Parameter
check brukes til å fortelle hvilket felt eller hvilken verdi som skal sjekkes. Du kan ikke bruke XPath for denne betingelsen.

CodeNotInCodelist

Blir sann dersom en verdi ikke finnes i en kodeliste.

<Condition type="CodeNotInCodelist" check="orid(33)"/>

Parameter
check brukes til å fortelle hvilket felt eller hvilken verdi som skal sjekkes. Du kan ikke bruke XPath for denne betingelsen.

ContainsAny

Er sann dersom verdien av et gitt felt inneholder en av de gitte verdiene.

<Condition type="ContainsAny" check="orid(34409)" value="Nei,0"/>

Parameter
Parameteren for denne betingelsen definerer feltet (i check) og en liste av verdier separert med komma (i value).

Equals

Denne betingelsen blir sann om det gitte feltet har en verdi som er lik den gitte verdien.

<Condition type="Equals" check="Skjema/Tilbakebetaling/Krav/Krav1" value="1000"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma. Verdien det sjekkes mot blir angitt i attributtet value. Du kan ikke bruke XPath for denne betingelsen.

NotEquals

Denne er sann dersom det gitte feltet har en verdi som ikke er lik den gitte verdien.

<Condition type="NotEquals" check="orid(34071)" value="100"/>

Parameter
Liste av felter i skjemaet gitt i Source-noden. Feltene blir separert av et komma. Verdien det sjekkes mot blir angitt i attributtet value. Du kan ikke bruke XPath for denne betingelsen.

SumEquals

Denne betingelsen er sann dersom summen av feltene i check er lik summen av feltene i value.

<Condition type="SumEquals" check="orid(34408),orid(34409)" value="orid(34588),orid(34510)"/>

Parameters
Liste av felter i skjemaet gitt i Source-noden som skal summeres. En gruppe i check og en annen gruppe i value. Feltene blir separert av et komma. Du kan ikke bruke XPath for denne betingelsen.

SumNotEquals

Denne betingelsen er sann dersom summen av feltene i check ikke er lik summen av feltene i value.

<Condition type="SumNotEquals" check="orid(34408),orid(34409)" value="orid(34588),orid(34510)"/>

Parameters
Liste av felter i skjemaet gitt i Source-noden som skal summeres. En gruppe i check og en annen gruppe i value. Feltene blir separert av et komma. Du kan ikke bruke XPath for denne betingelsen.

SumNotEqualsWithRange

Blir sann dersom summen av feltene i check ikke er innenfor et område. Du kan bare ha et felt i denne betingelsen, avviket skal være parameter nummer to.

<Condition type="SumNotEqualsWithRange" check="orid(34408),orid(34409)" value="orid(34588),20"/>

Parameters
Liste av felter i skjemaet gitt i Source-noden som skal summeres i check. value skal være først en direkte verdi eller et felt som verdien skal hentes fra, og deretter hvor stor avvik som skal tillates. Feltene blir separert av et komma. Du kan ikke bruke XPath for denne betingelsen.

IsPositive

Denne betingelsen er sann om det gitte feltet har en positiv verdi. Tallet 0 blir ikke regnet som positivt.

<Condition type="IsPositive" check="/Skjema/Tilbakebetaling/Krav/Krav1" form="62"/>

Parameter
Parameter for denne metoden er en enkelt referanse (i check-attributet) til et felt i skjemaet definert i attributtet form.

IsPositiveIncludingZero

Denne betingelsen er sann om det gitte feltet har en positiv verdi. Tallet 0 blir regnet som positivt.

<Condition type="IsPositiveIncludingZero" check=" Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1"/>

Parameter
Parameter for denne metoden er en enkelt referanse (i check-attributet).

IsPrefilled

Finner ut om et felt eller gruppen den er del av er preutfylt.

<Condition type="IsPrefilled" check=" Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1"/>

Parameter
Hvilket felt som skal sjekkes legges inn i check.

NotPrefilled

Blir sann dersom et felt eller gruppen den er del av er preutfylt.

<Condition type="NotPrefilled" check="orid(20804)"/>

Parameter
Hvilket felt som skal sjekkes legges inn i check.

IsNegative

Denne er sann om det gitte feltet har en negativ verdi.

<Condition type="IsNegative" check="orid(32969)"/>

Parameter
Parameteren er en enkelt referanse i check til et felt i skjemaet som er gitt i Source-noden.

IsEmpty

Denne betingelsen er sann om et felt er tomt..

<Condition type="IsEmpty" check="orid(34116)"/>

Parameter
Parameteren definerer et enkelt felt i skjemaet definert i Source-noden.

IsEmptyWithZeroValue

Er sann om et felt er tomt. Tallet 0 blir regnet som en verdi.

<Condition type="IsEmptyWithZeroValue" check=" Skjema/Utbetaling/Post1, Skjema/Tilbakebetaling/Krav1" value="Ja"/>

Parameter
Parameteren definerer et enkelt felt i check.

IsMissing

Denne er sann dersom et felt mangler i skjema-xml-en (ikke er til stede i xml-en).

<Condition type="IsMissing" check="orid(19794)"/>

Parameter
Definerer et enkelt felt i skjemaet funnet i Source-noden.

IsNonValidEmail

Sjekker om verdien er en gyldig epost-adresse. Returnerer sann dersom verdien ikke følger formatet til epost-adresse.

<Condition type="IsNonValidEmail" check="orid(3344)"/>

Parameter
Feltet som skal sjekkes fyller du ut i check. Du kan ikke bruke XPath for denne betingelsen.

IsValidSSN

Blir sann om det gitte feltet inneholder et nummer som følger formatet for personnummer (modulus-sjekk). Den vil ikke sjekke om det faktisk finnes en person som har dette personnummeret.

<Condition type="IsValidSSN" check="orid(20804)"/>

Parameter
Definerer feltet som skal bli sjekket for personnummer.

IsNonValidSSN

Blir sann om det gitte feltet ikke inneholder et nummer som følger formatet for personnummer (modulus-sjekk). Den vil ikke sjekke om det faktisk finnes en person som har dette personnummeret.

<Condition type="IsNonValidSSN" check="orid(20804)"/>

Parameter
Definerer feltet som skal bli sjekket for personnummer.

IsValidOrgNr

Denne betingelsen blir sann dersom det gitte feltet inneholder en verdi som passer med formatet for organisasjonsnummer.

<Condition type="IsValidOrgNr" check="orid(34091)"/>

Parameter
Definerer feltet som skal sjekkes for organisasjonsnummer.

IsNonValidOrgNr

Denne betingelsen blir sann dersom det gitte feltet inneholder en verdi som ikke passer med formatet for organisasjonsnummer.

<Condition type="IsNonValidOrgNr" check="orid(34091)"/> 

Parameter
Definerer feltet som skal sjekkes for organisasjonsnummer.

GreaterThan

Denne er sann dersom verdien i et gitt felt er større enn den gitte verdien.

<Condition type="GreaterThan" check="orid(6824)" value="2014"/>

Parameter
Definerer feltet i checkog verdien det skal sammenlignes med i value. Du kan ikke bruke XPath for denne betingelsen.

LessThan

Denne er sann dersom verdien i et gitt felt er mindre enn den gitte verdien.

<Condition type="LessThan" check="orid(6827)" value="1900"/>

Parameter
Definerer feltet i checkog verdien det skal sammenlignes med i value. Du kan ikke bruke XPath for denne betingelsen.

HasValue

Er sann dersom det gitte feltet har en verdi. Tallet 0 er regnet som en verdi.

<Condition type="HasValue" check="orid(6824)"/>

Parameter
check definerer feltet som skal sjekkes.

HasValueIgnoreZero

Er sann dersom det gitte feltet har en verdi. Tallet 0 er ikke regnet som en verdi.

<Condition type="HasValueIgnoreZero" check="orid(6824)"/>

Parameter
check definerer feltet som skal sjekkes.

NotPrefilled

Denne betingelsen er sann dersom det gitte feltet ikke er pre-utfylt. Dette vil bare virke med selvangivelsetjenestene (APE) som er merket med pre-utfylte verdier.

<Condition type="NotPrefilled" check="orid(22689)"/>

Parameters
Definerer feltet som skal bli sjekket for pre-utfylling.

Exists

Blir sann dersom det gitte feltet eksisterer i xml-en.

<Condition type="Exists" check="orid(34295)"/>

Parameter
Definerer feltet som det skal bli sjekket om eksisterer.

HasForm

Blir sann dersom skjemasettet inneholder et gitt skjema.

<Condition type="HasForm" form="618"/>  

Parameter
Definerer dataformat-id for skjemaet det skal sjekkes at er i skjemasettet.

MissingForm

Blir sann dersom skjemasettet mangler et gitt skjema.

<Condition type="MissingForm" form="618"/>  

Parameters
Definerer dataformat-id for skjemaet det skal sjekkes for.

MatchPattern

Sjekker om verdien oppfyller et regulært uttrykk (regular expression/regex). Returnerer sann dersom det er en match. (Regulære uttrykk er en måte å finne ut om en tekst oppfyller definerte kriterier. Hvordan du lager slike uttrykk faller utenfor denne håndboka. Du vil finne mange guider om dette på nettet.)

<Condition type="MatchPattern" check="orid(33)" value="([A-Z])\w+"/>

Parameter
Legg feltet som skal sjekkes i check og det regulære uttrykket i value. Du kan ikke bruke XPath for denne betingelsen.

DoesNotMatchPattern

Sjekker om verdien oppfyller et regulært uttrykk (se MatchPattern). Returnerer sann dersom det ikke er en match.

<Condition type="DoesNotMatchPattern" check="orid(222)" value="([A-Z])\w+"/>

Parameter
Legg feltet som skal sjekkes i check og det regulære uttrykket i value. Du kan ikke bruke XPath for denne betingelsen.

HasAnyForm

Blir sann dersom skjemasettet inneholder et av de gitte skjemaene.

<Condition type="HasAnyForm" form="1,2,61"/>

Parameter
Definerer dataformat-ider for skjemaene det skal sjekkes for. De skal skilles med komma.

ValueNotInCodeList

Denne betingelsen blir sann dersom et gitt felt ikke er lik en verdi fra en gitt kodeliste.

<Condition type="ValueNotInCodeList" codelist="ASF_Land" check="orid(34112)" value="3"/>  

Parameters
Definer kodelisten i «codelist», feltet i check og verdien i value. Du kan ikke bruke XPath for denne betingelsen.

ValueFoundMoreThanOnceInFields

Sjekker om verdien finnes i mer enn et av de feltene du oppgir.

<Condition type="ValueFoundMoreThanOnceInFields" check="orid(20804), orid(20805), orid(20806)" value="orid(2045)"/>

Parameter
Bruk check for å angi feltene, og value for å gi verdien det skal sjekkes mot. Du kan ikke bruke XPath for denne betingelsen.

NoneFieldHasValue

Returnerer sann dersom ingen av feltene har en ­verdi.

<Condition type="NoneFieldHasValue" check="orid(20804), orid(20805)"/>

Parameter
Feltene definerer du i check.

NotEqualAcrossMultipleForms

Sjekker om en verdi ikke er lik over flere skjema. Returnerer sann dersom verdien er funnet mer enn en gang.

<Condition type="NotEqualAcrossMultipleForms" check="orid(20804)" value="orid(20810)"/>

Parameter
Legg feltene som skal sjekkes i check, og verdien som skal sjekkes i value. Du kan ikke bruke XPath som value i denne betingelsen. For check vil XPath kunne brukes.

AnyFieldIsPositiveIncludingZero

Sjekker om noen av de gitte feltene har positiv verdi inkludert 0.

<Condition type="AnyFieldIsPositiveIncludingZero" check="orid(18116),orid(26537)"/>

Parameter
Feltene definerer du i check.

DuplicatedValue

Sjekker om gitt felt inneholder dupliserte verdier.

<Condition type="DuplicatedValue" check="orid(19890)"/>

Parameter
Feltet definerer du i check.

DateNotWithinRange

Sjekker om datoen i et gitt felt er innenfor en gitt periode (spesifisert med to datoer, kommaseparert).

<Condition type="DateNotWithinRange" check="orid(35505)" value="01-01-2012,31-12-2014"/>

Parameter
Feltet definerer du i check. value forteller hvilken periode det skal sjekkes mot.

HasAttachment

Sjekker om et gitt vedlegg finnes for en form

<Condition type="HasAttachment" form="AT03_Cycle01"/>

Parameter
Vedlegg definerer du i form.

HasAnyAttachment

Sjekker om noe av gitt vedlegg finnes for en form

<Condition type="HasAnyAttachment" form="AT02_Cycle01, AT03_Cycle01, AT04_Cycle01, AT06_Cycle01"/>

Parameter
Vedlegg (kommaseparert) definerer du i form.

MissingAttachment

Sjekker om et gitt vedlegg finnes ikke for en form

<Condition type="MissingAttachment" form="AT01_Cycle01"/>

Parameter
Vedlegg definerer du i form.