Funksjonsuttrykk og dynamiske variabler
I utformingen av regelsett, meldingsmal og eksportmal kan dynamiske variabler benyttes. En dynamisk variabel er en plassholder som blir erstattet med en generert verdi ved eksekvering.
En dynamisk variabel kan enten være et attributt eller en funksjon.
Attributt refererer til verdien av et attributt i et objekt.
Funksjon tar en eller flere parametre og genererer en verdi basert på disse. Avhengig av funksjon så kan parametre være: tall, tekst eller dynamisk variabel.
Utvalget av attributter er definert av objekttype (bruker, gruppe og avdeling). Noen attributter er tilgjengelig på tvers av objekttyper.
Eksempel på attributter og objekttyper:
GivenName
er kun tilgjengelig for brukere.Name
er tilgjengelig for både grupper og avdelinger (men ikke brukere).Description
er tilgjengelig for alle objekttyper.
Avhengig av grensesnitt så kan attributter enten velges fra en nedtrekksmeny eller oppgis i tekstformat (fig. 1).
Eksempel: avdelingsnummer kan oppgis som Departmentnumber
i nedtrekksmeny eller som tekst [departmentnumber]
i tekstfelt (fig. 1).
![Skjermbilde](https://mega.eadm.no/docs/img/ss/dynamic_variable_select_vs_text.png)
Figur 1 - Eksempelet viser to regler hvor attributt for avdelingsummer er oppgitt i nedtrekksmeny og i tekstformat. Disse to reglene er i praksis helt lik.
Tekstformat
I tekstformat kan man "åpne" en dynamisk variabel ved å taste inn en start-hakeparantes [
. En slutt-hakeparantes ]
blir da lagt til automatisk. Når markøren befinner seg mellom to hakeparanteser vises en liste over variabler (fig. 2). Listen er sortert alfabetisk og filtrért på (påbegynt) tekst i hakeparanteser (fig. 3).
Dersom en variabel oppgis i tekstformat så må den omsluttes med hakeparanteser.
Funksjoner må alltid oppgis i tekstformat og må derfor alltid omsluttes med hakeparanteser.
Eksempel på dynamiske variabler i tekstformat:
Attributt [givenname]
Funksjon [IFEMPTYUSE;[workphone];[mobile]]
Trykk pil opp ↑, pil ned ↓, og enter ↵ for å velge variabel fra listen. Trykk escape esc for å lukke listen. En kan også velge variabel i listen ved å skrolle og klikke med musen.
Listen viser både attributter og funksjoner. Sistnevnte er samlet i bunnen av listen.
![](../__attachments/33030191/image-20231212-150335.png?inst-v=b8c64463-f656-4efa-9976-59907bd16963)
Figur 2 - Listen over tilgjengelige dynamiske variabler vises over markøren.
![](../__attachments/33030191/image-20231212-150350.png?inst-v=b8c64463-f656-4efa-9976-59907bd16963)
Figur 3 - Listen er filtrért på variabler som inneholder teksten "dep".
Uttrykk
Et uttrykk er en tekst-streng som definererer en eller flere variabler i tillegg til statisk tekst. Et uttrykk kan variere fra det enkele til det avanserte.
Uttrykk | Beskrivelse | Eksempel på generert verdi |
---|---|---|
| En attributt | Kari |
| To attributter | Kari Nordmann |
| Statisk tekst med to attributter | Hei, Kari Nordmann! |
| En funksjon med en attributt som parameter | kari |
| En funksjon med tre parametre hvor den siste er en attributt | Kar |
| En nøstet funksjon som tar to funksjoner som parameter (fig. 5) | karnor |
Tabell: Eksempler på uttrykk fra det enkle til det avanserte.
Uttrykksbygger
Hvis man skal lage et uttrykk som består av nøstede funksjoner, eller om man lurer på hvilke verdier et uttrykk vil generere for et gitt objekt, så kan uttrykksbygger være til god hjelp. Uttrykksbygger er tilgjengelig for alle tekstfelt som støtter dynamiske variabler. Disse tekstfeltene har en tilhørende knapp (fig. 4) som åpner en dialog. I dialogen presenteres uttrykksbygger (fig. 5) med følgende elementer:
Uttrykk er et tekstfelt som støtter funksjonaliteten som beskrevet under tekstformat.
Forkast endringer er en knapp som gjenoppretter uttrykket (slik det fremsto da uttrykksbyggeren ble åpnet). Dersom det ikke er foretatt endringer så vil denne være deaktivert.
Evaluering viser navn på objekt og evaluering av uttrykket for dette objektet.
Velg [objekt] åpner dialog hvor man kan søke frem og velge objekt for evaluering.
Velg tilfeldig [objekt] velger et tilfeldig objekt av gjeldende objekttype.
![](../__attachments/33030191/image-20231212-150415.png?inst-v=b8c64463-f656-4efa-9976-59907bd16963)
Figur 4 - Tekstfelt for kilde har en tilhørende knapp for å åpne uttrykksbygger.
![](../__attachments/33030191/image-20231212-150453.png?inst-v=b8c64463-f656-4efa-9976-59907bd16963)
Figur 5 - Uttrykksbygger med et avansert uttrykk som er evaluert for Ola Nordmann.