Delen via


De ER-functie CASE

De functie CASE evalueert de waarde van de opgegeven expressie ten opzichte van de opgegeven alternatieve opties en retourneert het resultaat van de eerste optie die gelijk is aan de waarde van de opgegeven expressie. Anders wordt het optionele standaardresultaat geretourneerd, als een standaardresultaat is opgegeven als het laatste argument van de aangeroepen functie die niet wordt voorafgegaan door een optie. De geretourneerde waarde kan een waarde zijn van een van de ondersteunde gegevenstypen.

Syntaxis

CASE (expression, option 1, result 1[, option 2, result 2, …, option N, result N, default result])

Argumenten

expression: Primitief gegevenstype (Booleaans, numeriek of tekst)

Een geldige expressie die een waarde van het primitieve gegevenstype retourneert.

option 1: Primitief gegevenstype (Booleaans, numeriek of tekst)

Een geldige expressie die een waarde retourneert van hetzelfde primitieve gegevenstype als het argument expression van de aangeroepen functie. Dit argument is verplicht.

result 1: Een van de ondersteunde gegevenstypen

Het geretourneerde resultaat dat overeenkomt met de voorgaande optie. Dit argument is verplicht.

option N: Primitief gegevenstype (Booleaans, numeriek of tekst)

Een geldige expressie die een waarde retourneert van hetzelfde primitieve gegevenstype als het argument expression van de aangeroepen functie. Dit argument is optioneel.

result N: Een van de ondersteunde gegevenstypen

Het geretourneerde resultaat dat overeenkomt met de voorgaande optie. Dit argument is optioneel.

default result: Een van de ondersteunde gegevenstypen

Het resultaat dat moet worden geretourneerd als er geen overeenkomst is. Dit argument is optioneel.

Retourwaarden

Een van de ondersteunde gegevenstypen

De resulterende waarde van een van de ondersteunde gegevenstypen.

Gebruiksaanwijzingen

Tijdens runtime wordt een uitzondering gegenereerd als er geen overeenkomst is en er geen optioneel standaardresultaat is gedefinieerd.

Alle resultaten moeten worden opgegeven met hetzelfde gegevenstype. Er wordt een uitzondering gegenereerd tijdens het ontwerpen als de gegevenstypen van de geconfigureerde resultaten niet overeenkomen.

Als de eerste resultaatwaarde en de Ne resultaatwaarde waarden van het gegevenstype Container (record) of Recordlijst zijn, bevat het resultaat alleen de velden die in beide waarden bestaan.

Voorbeeld

CASE( DATETIMEFORMAT( NOW(), "MM"), "10", "WINTER", "11", "WINTER", "12", "WINTER", "") retourneert de tekenreeks WINTER wanneer de datum van de huidige toepassingssessie tussen oktober en december ligt. Anders wordt een lege tekenreeks geretourneerd.

Aanvullende resources

Logische functies