Yleiskatsaus
Sääntöilmaisuja käsittelevä moottori arvioi eADM:ssä sulkeisfunktiot ja kenttäpaikkamerkit. Ilmaisuja esiintyy seuraavissa:
|
Kuluttaja |
Tyypillinen käyttötarkoitus |
|---|---|
|
Sääntökokonaisuudet (Regelsett) |
Suodata käyttäjiä, osastoja ja ryhmiä; hallitse viestivirtoja, synkronointivaiheita ja käyttöoikeuksia |
|
Viestipohjat |
Dynaaminen vastaanottaja, aihe, teksti (HTML) |
|
Vie mallit / synkronoi mallien virtausviivat |
Kohdeattribuuttien kartoitus |
|
Asiakkaan asetukset |
Käyttäjänimen ilmaisu, ryhmien automaattinen nimeäminen, sijaintisuodatin |
|
Lomakemallit |
Lomakekenttien sidokset |
|
Lausekkeenmuodostaja |
Esikatselu testikäyttäjän, osaston tai ryhmän osalta |
Arvioinnin kulku
-
Moottori etsii lausekkeesta
[...]poletteja. -
[ARRAYFOREACH...]suoritetaan ensin — ennen ”innermost-first”-kierrosta — joten mallipohjien paikkamerkit???ja???imääritetään jokaiselle putkilla erotetulle elementille. -
Muussa tapauksessa se ratkaisee ensin sisimmän sulkuparin.
-
Jokainen funktio palauttaa tekstimuotoisen tuloksen, joka korvaa sulun.
-
Kun toimintoja ei ole enää jäljellä, jäljellä olevat
[FieldName]merkit korvataan nykyinen objekti (ja valinnainen historiarivi (viestivirroissa). -
Tunnistamattomat kenttänimet säilyvät kirjaimellisina
[FieldName]tulostuksessa.
Putkilla erotetut luettelot (|) käytetään moniarvoisissa tiedoissa — erityisesti henkilöstöhallinnossa tehtävät käyttäjälle.
Seuraavissa esimerkeissä käytetyt tekaistut tiedot
Ellei toisin mainita, esimerkeissä oletetaan, että asiakas on Eksempel kommune, jolla on:
|
Kohde |
Keskeiset arvot |
|---|---|
|
Käyttäjä Kari Nordmann |
Etunimi= |
|
Käyttäjän sijainnit (putken suuntaan) |
|
|
IT -osasto (tyyppi 2) |
Id= |
|
Henkilöstö osasto (IT-osaston alainen) |
Id= |
|
Järjestelmärooli (käyttöoikeus) |
Id= |
|
Karin käyttöoikeus |
SystemRoleId= |
Objektityyppien tunnisteet (hakua varten): Käyttäjä=1, Osasto=2, Ryhmä=3, API-käyttäjä=14.
Syntaksin säännöt
-
Toiminnot:
[NAME;arg1;arg2;...]— puolipisteellä erotetut argumentit (;). -
Kentät:
[FieldName]— nykyisen objektin arvo (kirjainkokoa ei huomioida). -
Sisäkkäiset lausekkeet: sisemmät sulkeet tulkitaan ennen ulompia.
-
Luettelon erottimena: putkimerkki
|(pystysuora viiva) arvojen välissä — esim.POS-01|POS-02. Älä koskaan kirjoita kauttaviivaa;|esiintyy vain Markdown-merkintöjen pakotuksena lähdetiedostoissa, ei lausekkeissa. -
Kenttien päivämäärät tallennetaan usein muodossa
dd.MM.yyyy HH:mm:ss; tuonnissa voidaan käyttääyyyy-MM-ddja muut yleiset tiedostomuodot.
Kyselykieli
Sisäkäyttöön [FOREACH], [IFTHENELSE], ja edistyneitä [OBJECT...] suodattimet.
|
Tunnus |
Merkitys |
|---|---|
|
|
Tasa-arvoinen |
|
|
Suurempi / pienempi kuin |
|
|
Ei yhtä suuri |
|
|
Kuvion tunnistus (like) |
|
|
Arvo luettelossa |
|
|
JA seuraava ehto |
|
|
TAI seuraava ehto |
Lisää tietojen eteen etuliite object., system., systemrole., objectpermission., jne.
Pesintä
Ensin sisempi kenttä, sitten ulompi funktio
|
Vaihe |
Ilmaisufragmentti |
päättää |
|---|---|---|
|
1 |
|
|
|
2 |
|
|
Estetty, jos sisäinen kenttä puuttuu: [SUBSTRING;0;10;[UnknownField]] pysyy muuttumattomana, kun UnknownField ei ole kohteessa.
Tyypillinen käyttöoikeusketju (luetaan sisältä ulospäin):
[REFERENCE;DisplayName;UserId;1;[REFERENCE;Manager;Id;2;[OBJECTPERMISSION;ManagerOf;SystemRoleId;501]]]
-
Lupa → osaston tunnus
2100 -
Osasto → esimiehen käyttäjätunnus
-
Käyttäjä → esimiehen näyttönimi
[ARRAYFOREACH...] on erilainen: se laajentaa putkilla erotetun luettelon ennen mallin sisäiset funktiot suoritetaan. Käytä ??? kyseisen elementin osalta ja ???i koska sen indeksi alkaa nollasta. Pesintä [ARRAYFOREACH...] toisen sisällä [ARRAYFOREACH...] ei ole tuettu — käytä [ARRAYJOIN] / [ARRAYPREFIX] tai soittaa sen sijaan sisaruksille.
Käyttöoikeustasot
|
Rooli |
Mihin se vaikuttaa |
|---|---|
|
Supermanageri |
Ilmaisunmuodostajan esikatselu |
|
Yhtiön hallintovastaava |
Täydellinen toimintojen luettelo rakennustyökalussa; |
|
Organisaation järjestelmänvalvoja |
Esikatselussa suojattuihin kenttiin vaikuttavat lausekkeet |
|
Pääkäyttäjä |
|
Automaatio (synkronointi, viestit, vienti) arvioi lausekkeet palvelimen käyttöoikeuksilla. Toiminto, joka toimii tuotantoympäristössä, voi silti olla estetty roolisi lausekkeenmuodostimessa.
Kenttien paikkamerkit
Ei funktioita — korvataan nykyisestä objektista (tai tapahtumapohjaisten viestivirtojen historiarivistä ).
Esimerkki: Malli Hello [GivenName] [Surname] Kari Nordmannista → Hello Kari Nordmann
|
Paikkamerkki |
Tyypillinen lähde |
|---|---|
|
|
Henkilön nimi |
|
|
Tili / sähköposti |
|
|
Perusopetuksen osasto |
|
|
Työsuhteen alkamispäivä ja -aika |
|
|
Henkilöstöosaston antama suositus esimieheltä |
|
|
Moniasentoinen (putkilla erotettu) |
Vain historia (viestit näkyvät synkronoinnin jälkeen): [OldValue], [NewValue], [EntryType], [AttributeName], [Comment].
Toiminto-opas esimerkkeineen
Jokaisessa kohdassa on lueteltu parametrit, esimerkki, jossa on käytetty testitietoja, sekä odotettu tulos.
Päivämäärä ja kellonaika
[NÅ] / [NOW]
Palauttaa palvelimen päivämäärän ja kellonajan.
|
Parametri |
Tarkoitus |
|---|---|
|
(ei mitään) |
Tällä hetkellä |
|
|
Lisää tai vähennä N päivää |
|
Ilmaisu |
Palvelimen oletuspäivämäärä |
Lähtö |
|---|---|---|
|
|
17.06.2026 klo 14.30.00 |
|
|
|
17.06.2026 |
|
Käyttö: Luvan alkamispäivän näyttö, mallien suhteelliset määräajat.
[DATEFORMAT;date;format]
Muuntaa päivämäärämerkkijonon uuteen muotoon.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Syötä päivämäärä tai putkilla erotetut päivämäärät |
|
|
Lähtökuvio (esim. |
|
Ilmaisu |
Syöte (kenttien määrittelyn jälkeen) |
Lähtö |
|---|---|---|
|
|
— |
|
|
|
kaksi päivämäärää |
|
Käyttö: Vientimuodot, ISO-päivämäärät API-viestien sisällössä.
[DATEDIFF;date1;date2;unit]
Kahden päivämäärän välinen numeerinen ero.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Myöhempi vai ensisijainen päivämäärä |
|
|
Aikaisempi päivämäärä tai viitepäivämäärä |
|
|
|
|
Ilmaisu |
Lähtö |
Merkitys |
|---|---|---|
|
|
|
77 päivää aloittamisesta tähän päivään |
|
|
|
Tässä esimerkissä sama kalenterivuosi |
Käyttö: Tenure-tarkistukset sääntöjoukoissa, ”päiviä alkuun” viesteissä.
[DAYOFYEAR;date]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Arviointipäivä |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Kausittaiset säännöt, tilikauden erikoisjärjestelyt.
Merkkijonojen käsittely
[SUBSTRING;start;length;text]
|
Parametri |
Tarkoitus |
|---|---|
|
|
0:sta alkava aloitusindeksi |
|
|
Otettavien merkkien määrä |
|
|
Lähdemerkkijono (usein sisäkkäinen kenttä) |
|
Ilmaisu |
Päätös |
Lähtö |
|---|---|---|
|
|
— |
|
|
|
— |
|
Käyttö: Tervetuloviesteissä päivämäärä ilman kellonaikaa: [SUBSTRING;0;10;[Start]] → 01.04.2026.
[SPLIT;text;delimiter;index]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Jaettava merkkijono |
|
|
Erotin (esim. |
|
|
0:sta alkava kappaleen indeksi, tai |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Tervehdys yhdistetyistä nimikentistä; valitse viimeinen sijaintikoodi.
[REPLACE;text;find;replace]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Alkuperäinen merkkijono |
|
|
Korvattavat osajonot; putki = useita; |
|
|
Korvaava teksti |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Puhelinnumeroiden muotoileminen, erottimien vaihtaminen käyttäjätunnuksissa.
[REPLACELIST;text;fromChars;toChars]
Merkkikohtainen vastaavuustaulukko (molempien merkkijonojen on oltava samanpituisia).
|
Parametri |
Tarkoitus |
|---|---|
|
|
Tulo |
|
|
Määritettävät merkit |
|
|
Määritettävät merkit |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Vanhojen merkistöjen korjaukset tuontitoiminnoissa.
[RTRIM;text;chars] / [LTRIM;text;chars]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Syöte; jos se sisältää |
|
|
Merkit, jotka poistetaan lopusta (RTRIM) tai alusta (LTRIM) |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Puhdista putkiluettelot sen jälkeen, kun [ARRAYDIFF].
[RPAD;text;padChar;totalLength] / [LPAD;text;padChar;totalLength]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Arvo syötettäväksi |
|
|
Täytemerkki |
|
|
Kohteen leveys |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Kiinteän pituiset työntekijänumerot tiedostojen viennissä.
[RIGHT;length;text]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Kuinka monta merkkiä oikealta |
|
|
Lähde |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Kansallisen henkilötunnuksen viimeiset numerot testausympäristöissä.
[INITIALS;text;startWord;endWord]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Koko nimi tai lause |
|
|
Sanan hakemiston aloituskohta (0-pohjainen) |
|
|
Sana-hakemisto loppuun asti, tai |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Lyhytkoodit ryhmien nimissä tai sähköpostin aliaksissa.
[PRETTIFY;text]
Isot alkukirjaimet välilyönnin tai yhdysmerkin jälkeen.
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Näytä nimet viesteissä, kun HR lähettää viestejä isoilla kirjaimilla.
[LOWER;text] / [UPPER;text]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Normalisoi ennen [CLEAN] käyttäjätunnuksen sääntöissä.
[CLEAN;text] / [STRICTCLEAN;text] / [CNCLEAN;text]
Poista tai korvaa merkit, jotka eivät sovellu käyttäjätunnuksiin, tiukasti määriteltyihin tunnisteisiin tai AD:n yleisnimiin (CN).
|
Ilmaisu |
Tyypillinen tulos |
Käyttö |
|---|---|---|
|
|
|
Käyttäjätunnus / uid |
|
|
CN-safe-lomake AD:lle |
Ryhmän tai käyttäjän CN |
Tarkka tulos riippuu asiakkaan merkkisäännöistä; testaa ilmaisurakentajassa.
[GETKEYVALUE;key;delimiter;metadata]
Lukukerrat key<delimiter>value parit putkimerkillä erotetussa metatietojonossa.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Etsittävä avain |
|
|
Avainten ja arvojen välinen erottimena (usein |
|
|
Putkilla erotettu luettelo avain-arvo-tunnuksista |
|
Ilmaisu |
|
Lähtö |
|---|---|---|
|
|
— |
|
Käyttö: Mukautetut tuontimetatiedot laajennuksen attribuuteissa.
Logiikka ja ohjausvirta
[IFTHENELSE;query;thenValue;elseValue]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Ehto nykyinen objekti (esim. |
|
|
Palautetaan, jos kysely vastaa hakua |
|
|
Palautetaan, jos ei |
|
Konteksti |
Ilmaisu |
Lähtö |
|---|---|---|
|
Käyttäjä Kari (tyyppi 1) |
|
|
|
IT-osasto (tyyppi 2) |
sama |
|
Käyttö: Yksi malli eri objektityyppien yhdistelmälle.
[IFEMPTYUSE;primary;fallback;reversed]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Testattava arvo |
|
|
Käytetään, kun ensisijainen on tyhjä (oletus) |
|
|
Valinnainen |
|
Ilmaisu |
Karin käyttöoikeuden voimassaolon päättyminen |
Lähtö |
|---|---|---|
|
|
tyhjä |
|
|
|
|
|
|
|
Johtaja= |
`` (tyhjä — päinvastaisessa järjestyksessä: käytetään vain, jos hallinnoija on olemassa) |
Käyttö: Oletusteksti, jos voimassaolon päättymispäivä, vastuuhenkilö tai kommentti puuttuu.
[EXISTS;value;resultIfNonEmpty]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Testattu merkkijono |
|
|
Palautetaan vain, jos |
|
Ilmaisu |
Kari-vastaavan kenttä |
Lähtö |
|---|---|---|
|
|
|
|
|
|
tyhjä |
`` (tyhjä) |
Käyttö: Porttiin upotetut hakutoiminnot — suoritetaan vain [REFERENCE...] kun [Manager] on asetettu.
[TRANSFORM;input;mapping...]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Kartalle merkittävä arvo |
|
|
Täsmää syöte ja tulos |
|
|
Yleismerkki, jos mikään avain ei vastaa |
|
Ilmaisu |
|
Lähtö |
|---|---|---|
|
|
— |
|
|
|
— |
|
Käyttö: HR-koodit → tekstin näyttäminen viesteissä.
[CONTAINS;valueList;targetList;ifYes;ifNo]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Putkilla erotetut neulat |
|
|
Putkilla erotettu heinäpaali |
|
|
Vastaavuuden / ei vastaavuuden yhteydessä palautetut merkkijonot |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Ruleset-tyyppinen haarautuminen mallin sisällä.
Taulukon (putkilla erotetut) operaatiot
Luettelot näyttävät tältä A|B|C. Monissa henkilöstöhallinnon tehtävissä käytetään tätä mallia.
[COUNT;ignored;list]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Paikkamerkki (käyttämätön) |
|
|
Putkilla erotetut arvot |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: ”Kuinka monta tehtävää tällä käyttäjällä on?”
[ARRAYAPPEND;list1;list2]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Yhdistä kahden käyttöoikeuskyselyn rooliluettelot.
[ARRAYUNIQUE;list]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Poista osastotunnisteiden päällekkäisyydet ennen vientiä.
[ARRAYFILTER;list;allowed]
Säilyttää vain ne kohteet, jotka esiintyvät allowed.
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Viestin sijaintityyppien lisääminen sallittujen luetteloon.
[ARRAYDIFF;current;previous]
Tuotteet kohdassa current ei sisällä previous.
|
Konteksti |
|
|
Lähtö |
|---|---|---|---|
|
Uusi tehtävä lisätty |
|
|
|
|
Ei muutoksia |
|
|
`` |
Käyttö: Tunnista uusi tehtävä viestivirrassa (yhdessä [LASTVALUE;APositionCodeId]). Varoitus: epäluotettava, jos useita asemia muuttuu yhdellä tuonnilla.
[ARRAYJOIN;list1;list2]
Yhdistää kaksi luetteloa indeksin avulla.
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Yhdistä rinnakkaiset sarakkeet CSV-tyylisten vientirivien muodostamiseksi.
[ARRAYFOREACH;array;template] / [ARRAYFOREACH;array;separator;template]
Käy läpi a:n putkilla erotettu luettelo. Jokaisen ei-tyhjän elementin kohdalla korvataan ??? elementin kanssa ja ???i mallissa, jossa indeksi alkaa nollasta, arvioi sisäkkäiset [...] mallissa ja yhdistää sitten tulokset.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Putkilla erotettu luettelo (usein kenttä, kuten |
|
|
Valinnainen yhdistämismerkkijono toistojen välillä (oletusarvo |
|
|
Teksti tai sisäkkäinen lauseke; |
|
Ilmaisu |
Kari |
Lähtö |
|---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tyhjät putkiosat ovat ohitettu (sama käytäntö kuin [ARRAYUNIQUE] / [ARRAYPREFIX]).
Ei tueta: [ARRAYFOREACH...] sisäkkäin toisen sisällä [ARRAYFOREACH...] — lausekkeen arviointi epäonnistuu. Käytä kahta rinnakkaista kutsua tai [ARRAYJOIN] sen sijaan.
Käyttö: Muotoile kukin sijainti omaksi rivikseen viestissä; lisää jokaisen yksikön tunnisteen eteen etuliite vientiä varten.
[ARRAYPREFIX;list;mode;text]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Putkilla erotetut kohteet |
|
|
|
|
|
Etuliite- tai jälkiliitemerkkijono |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Nimitilan ulkoiset tunnisteet.
[ARRAYTRIM;list;delimiter;maxCount]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttö: Vain N ensimmäistä sijaa yhteenvetosähköpostissa.
[PRUNEARRAY;list;regex;reverse]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Putkilla erotetut kohteet |
|
|
.NET-säännöllinen lauseke |
|
|
|
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
Käyttö: Poista väliaikaiset sijaintikoodit viennistä.
[UNION;headers;list1;list2;...]
Yhdistää rinnakkaiset luettelot rivikohtaisesti välilyönnillä ja putkimerkillä yhdistetyiksi riveiksi.
|
Ilmaisu |
Käsitteellinen tuotos |
|---|---|
|
|
|
Käyttö: Monisarakkeiset tekstikappaleet raporteissa.
Satunnaisuus, hajautus, ainutlaatuisuus
[RND;min;max]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Pienin kokonaisluku (mukaan lukien) |
|
|
Suurin kokonaisluku (käytännössä ei sisällä itse lukua — tarkista alueesi) |
|
Ilmaisu |
Esimerkki tulosteesta |
|---|---|
|
|
|
Käyttö: Lippujen numerot testimalleissa.
[STRRND;minLen;maxLen;chars]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Pituusalue |
|
|
Sallittu merkistö (tyhjä = oletusarvoisesti aakkosnumeerinen) |
|
Ilmaisu |
Esimerkki tulosteesta |
|---|---|
|
|
|
Käyttö: Kertakäyttöiset koodit, kun salasanasääntöä ei käytetä.
[PASSWORD;ruleId]
|
Parametri |
Tarkoitus |
|---|---|
|
|
eADM:ssä määritetyn salasanan luontisäännön tunniste |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
esim. |
Käyttö: Aloitussalasana tervetuloviestissä — käsittele sitä huolellisesti.
[HASH;text]
|
Ilmaisu |
Tulostus (esimerkki) |
|---|---|
|
|
32-merkkinen MD5-heksadesimaalimerkkijono (tulos on sama samalle syötteelle) |
Käyttö: Läpinäkymättömät tunnisteet linkeissä (ei pelkästään turvallisuuden kannalta kriittiseen hajautukseen).
[UNIQUE;base;fieldName;replacement]
Varmistaa base ei ole vielä olemassa fieldName toiseen kohteeseen; liittää 2, 3, … tai ennen replacement.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Ehdotettu käyttäjätunnus tai sähköpostiosoite |
|
|
Kenttä, jonka avulla ainutlaatuisuus tarkistetaan (esim. |
|
|
Valinnainen pääte, joka korvataan numerolla |
|
Skenaario |
Ilmaisu |
Lähtö |
|---|---|---|
|
|
|
|
|
|
sama |
|
Käyttö: Asiakkaan asetukset käyttäjätunnuksen ilmaisu yhdessä [CLEAN] / [LOWER].
Tietokantahaku ja suhteet
Nämä lukevat asiakkaan reaaliaikaisia eADM-tietoja. Tunnisteiden on oltava olemassa ympäristössäsi.
[REFERENCE;returnField;whereField;objectTypeId;searchValue;exactMatch]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Kenttä(t), jotka palautetaan vastaavasta objektista ( |
|
|
Vertailtava kenttä |
|
|
|
|
|
Etsittävä arvo |
|
|
|
|
Ilmaisu |
Harjoitusottelu |
Lähtö |
|---|---|---|
|
|
Osaston tunnus 2100 = IT |
|
|
|
Käyttäjänvalvoja |
|
Käyttö: Luvan osastonumero ManagerOf id:
[REFERENCE;OrgUnitnr;Id;2;2100]
[OBJECTPERMISSION;returnField;whereField;filterValue;exactMatch;aggregate]
Lukee nykyisen käyttäjän käyttöoikeudet.
|
Parametri |
Tarkoitus |
|---|---|
|
|
Lupakenttä (Comment, ManagerOf, ExpiryDate, SystemRoleId, …) |
|
|
Suodatettava kenttä |
|
|
Vastaava arvo, tai |
|
|
Merkkijonojen vertailutila |
|
|
|
|
Ilmaisu |
Tulostus (Kari) |
|---|---|
|
|
|
|
|
|
Roolin nimen lyhenne:
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
[OBJECTHISTORIES;returnField;whereField;filterValue;exactMatch;aggregate]
Lukee nykyisen käyttäjän objektien historian (synkronoinnin ja käyttöliittymän tapahtumaloki).
|
Esimerkki suodattimesta |
Ilmaisu |
Tyypillinen tulos |
|---|---|---|
|
Viimeisin lisätty käyttöoikeus |
|
|
Käyttö: "Kuka on myöntänyt tämän luvan?" viestiketjuissa (usein sisäkkäin [SPLIT] / [REFERENCE]).
[FOREACH;collection;query;returnFields;headers;format]
|
Parametri |
Tarkoitus |
|---|---|
|
|
|
|
|
Suodata (yrityksen laajuus lisätään automaattisesti) |
|
|
Pilkuilla erotetut kentät, valinnainen |
|
|
Sarakkeiden otsikot csv/html-tiedostoille |
|
|
|
Esimerkki (käsitteellinen): Kaikki käyttäjät, joilla on rooli 501, CSV:
[FOREACH;objectpermission;SystemRoleId=501;object.DisplayName,object.Email;Name,Email;csv]
Tulostus (dummy):
Name,Email
Kari Nordmann,kari.nordmann@eksempel.kommune.no
Ola Hansen,ola.hansen@eksempel.kommune.no
Käyttö: Sähköpostin tekstiosaan upotettu esimiehen raportti.
[DESCENDANTS;rootId;returnField;parentKey;foreignKey]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Osaston tunniste, josta aloitetaan |
|
|
Kustakin solmusta kerättävä kenttä |
|
|
Alikenttä, joka viittaa pääkenttään (esim. |
|
|
Vanhemman tunnisteen kenttä (esim. |
|
Aloita |
Puu |
Ilmaisu |
Lähtö |
|---|---|---|---|
|
IT-tunnus |
IT → HR |
|
|
Käyttö: Kaikki osastot, joiden toimivalta perustuu esimiehen käyttöoikeuksiin.
[SYSTEM;type;id;field]
|
Parametri |
Tarkoitus |
|---|---|
|
|
|
|
|
Numero-tunnus tai |
|
|
Palautettavat kenttien nimet |
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
|
|
|
Käyttö: Järjestelmän omistajan yhteystiedot järjestelmänvalvojan ilmoituksessa.
[SELECTION;rulesetId;returnField]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Kohteittain arvioitava sääntökokoelma |
|
|
Kunkin objektin kenttä, joka vastaa |
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
Käyttö: Postituslista, johon kuuluvat kaikki, jotka täyttävät ”Uudet työntekijät” -sääntöjoukon ehdot.
[AVAILABLESYSTEM;field] / [AVAILABLEROLE;systemId;field]
Palauttaa putkilla erotetut arvot järjestelmistä tai rooleista, jotka täyttävät ”Saatavilla” - säännön nykyiselle käyttäjälle.
|
Ilmaisu |
Merkitys |
|---|---|
|
|
Järjestelmien nimet, joihin Kari voi saada käyttöoikeudet |
|
|
Järjestelmässä 12 olevat roolinimet, joihin hänet saatetaan nimetä |
Käyttö: Dynaamiset valintaluettelot lomakkeissa tai viesteissä.
[AVAILABLEDEPARTMENTS;fields;targetUserId]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Pilkuilla erotetut osastokentät |
|
|
Käyttäjän arvioitava; tyhjä = nykyinen objekti |
Käyttö: Luettelee osastot, joita johtaja voi hallinnoida (perustuen ManagerOf-kenttään, yksikkötunnuksiin ja mega.eadm.no-rooleihin ).
[DATAOWNER;returnField]
Seuraa objektin data-omistaja-suhdetta; palauttaa omistajan kentän.
|
Ilmaisu |
Tulostus (jos omistajaryhmän nimi on tallennettu) |
|---|---|
|
|
|
[ANTECEDANTS.SYSTEMROLE;roleId;departmentId;returnField]
Johtajat, joilla on hallussaan roleId ... esi-isä osastot departmentId.
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
Käyttö: Escalation-sähköposti, kun HR:n alaosastolla ei ole paikallista hyväksyjää.
[COUNTEMPLOYEE] / [COUNTMEMBERS]
Arvioidaan vastaavasti osaston tai ryhmän tasolla.
|
Kohde |
Ilmaisu |
Tulostus (dummy) |
|---|---|---|
|
IT-osasto |
|
|
|
Ryhmä ”Prosjekt Alfa” |
|
|
[GETLASTSYNCID]
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
Käyttö: Hallintaviestien alatunnisteiden vianmääritys.
[LASTVALUE;attributeName]
Kentän edellinen arvo viimeisimmästä HR-historiatiedostojen tuonnista, muussa tapauksessa kentän nykyinen arvo.
|
Konteksti |
Ilmaisu |
Lähtö |
|---|---|---|
|
Ennen synkronointia Karilla oli yksi tehtävä |
|
|
|
Kun POS-02 on lisätty |
|
|
Sopii yhteen [ARRAYDIFF;[APositionCodeId];[LASTVALUE;APositionCodeId]] → POS-02|.
Tehtävät (monitoiminen HR)
Kenttien sijainti jakaa indeksin putkien välillä: index 0 = ensimmäinen sija, 1 = sekunti.
[POSITION;returnField;whereField;matchValue]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Palautettava kenttä (esim. |
|
|
Vastaava kenttä (esim. |
|
|
Etsittävä yksikkö tai koodi |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
|
|
|
[POSITIONS;returnField;whereField;matchValue]
Sama kuin [POSITION] mutta palauttaa tasatun putkimerkkijonon kaikissa kohdissa (tyhjä paikka, jos vastaavuutta ei löydy).
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
[GROUPPRIMARYPOSITION;returnField]
Valinnat ensisijainen sijoitus: ylin APositionPercentage, tasatilanteessa ratkaisu aikajärjestyksen perusteella APositionStartDate.
|
Karin tehtävät |
Ilmaisu |
Lähtö |
|---|---|---|
|
100 % IT, 20 % HR |
|
|
[ACTIVEPOSITIONCOUNT;asOfDate]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Viestintä ja integraatio
[COUNTMESSAGESENT;messageId;fromDate]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Viestimallin tunnus. Valinnainen — jos jätetään pois (vastaa |
|
|
Laske mukaan vain tämän päivämäärän jälkeiset lähetykset (valinnainen) |
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
Jätetty pois messageId: Jos viestimallin tunnusta ei ole annettu ([COUNTMESSAGESENT;] on yhtä suuri kuin 0), lauseke arvioidaan sen viestimallin kontekstissa, jonka lähettäminen laukaisi sääntöjoukon. Toisin sanoen se tulkitaan kysymykseksi ”onko parhaillaan lähetettävä viesti jo lähetetty tälle vastaanottajalle”, eikä se viittaa mihinkään yksittäiseen kiinteään mallitunnukseen. Tämän vuoksi samaa sääntöjoukkoa voidaan käyttää uudelleen useiden eri viestimallien päällekkäislähetysten estäjänä sen sijaan, että jokaiselle mallille luotaisiin oma sääntöjoukko.
Varoitus: Sääntöjoukon esikatselu lausekkeenmuodostimessa ei toimi, kun messageId jätetään pois, koska varsinaisen viestin lähettämisen ulkopuolella ei ole laukaisevaa viestimallia, joka tarjoaisi kyseisen kontekstin.
Käyttö: ”Onko jo ilmoitettu?” -tarkistus seurantaprosessissa; yhteinen päällekkäislähetysten estotoiminto useissa viestipohjissa.
[SYSTEMOWNER]
Vaatii historiarivin käyttöoikeuden muutoksesta (lisää/muokkaa/poista -oikeus).
|
Konteksti |
Tulostus (dummy) |
|---|---|
|
Rooliin 501 lisätty käyttöoikeus |
|
Käyttö: CC-järjestelmän omistaja, kun automaattinen käyttöoikeus myönnetään.
[SYNCSTEPPARAMETER;key;companySyncStepId]
|
Parametri |
Tarkoitus |
|---|---|
|
|
Synkronointivaiheen parametrin nimi |
|
|
Asiakkaan synkronointivaiheen instanssin tunnus |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Käyttöoikeudet: Yrityksen järjestelmänvalvoja Expression Builder -esikatselussa.
[APITOKEN;apiUsername]
|
Parametri |
Tarkoitus |
|---|---|
|
|
API-käyttäjän kirjautumistunnus (objektityyppi 14) |
|
Ilmaisu |
Lähtö |
|---|---|
|
|
Läpinäkymätön istuntotunnuksen merkkijono (vaihtelee) |
Käyttöoikeudet: Yrityksen järjestelmänvalvoja esikatseluvaiheessa. Käytä vain suojatuissa palvelinpuolen prosesseissa.
HTML-aputoiminnot (viestipohjat)
[HTMLLISTMEMBEROF;displayField]
Ryhmän jäsenen kohdalla: näyttää yläryhmät.
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
[HTMLLISTARRAY;list]
|
Ilmaisu |
Lähtö |
|---|---|
|
|
|
Lomakemallin ohjausobjektit
Käytetään lomakemalleissa, ei vakiosääntöjoukoissa.
|
Toiminto |
Tarkoitus |
|---|---|
|
|
Lomakekentän tunnisteeseen sidottu tekstinsyöttö |
|
|
Boolen-tyyppinen syöte |
|
|
Pudotusvalikko (viisi parametria) |
|
|
Radioryhmä |
|
|
Päivämäärän valitsin |
|
|
Usean rivin teksti |
|
|
Toimintopainike |
Esimerkkimalli: [INPUTBOX;1042;Avdeling;IT-100;] muuntaa syötteen, jonka otsikkona on ”Avdeling”, oletusarvoksi IT-100.
Merkit [NOTIFY...], [HIDDEN...], [SERVERFUNCTION...] ovat käyttäytymiskoukkuja, eivät datatoimintoja.
Kokonaisvaltaiset skenaariot (testitiedot)
Tervetuloviesti — vain aloituspäivä
Ny ansatt [DisplayName] starter [SUBSTRING;0;10;[Start]].
Tulostus: Ny ansatt Kari Nordmann starter 01.04.2026.
Luvan voimassaolon päättymispäivä
Gyldig til: [IFEMPTYUSE;[OBJECTPERMISSION;ExpiryDate;SystemRoleId;501];Permanent tilgang]
Tulostus: Gyldig til: Permanent tilgang
Esimies poissa — ilmoita asiasta ylemmälle osastonjohtajalle
[IFEMPTYUSE;
[EXISTS;[Manager];];
[REFERENCE;Email;UserId;1;[REFERENCE;Manager;Id;2;[REFERENCE;ParentDepartmentNumber;DepartmentNumber;2;[DepartmentNumber]]]]]
|
Kari, johtaja |
Lähtö |
|---|---|
|
tyhjä |
|
|
joukko |
tyhjä (EXISTS-haara — muokkaa mallin logiikkaa, jos tarvitset esimiehen sähköpostiosoitetta, kun se on käytettävissä) |
Säädä IFEMPTYUSE/EXISTS-yhdistelmää mallisi tarkoituksen mukaiseksi; testaa se lausekkeenmuodostajassa.
Vain uusi tehtävä — viestin vastaanottaja
Synkronoinnin jälkeen lisäykset POS-02:
[REFERENCE;Email;UserId;1;[POSITION;APositionManager;AUnitId;[RTRIM;[ARRAYDIFF;[APositionCodeId];[LASTVALUE;APositionCodeId]];|]]]
Tulostus: Uuden tehtävän yksikön esimiehen sähköpostiosoite (esimerkki: ny-leder@eksempel.kommune.no).
Automaattisen suojausryhmän nimi (asiakkaan määrittämä)
SG-[Department]-[CLEAN;[OrgUnitnr]]
Tulostus: SG-IT og digitalisering-IT-100 (tarkka CLEAN-lähtösignaali voi vaihdella).
Vientikartoitus — samAccountName
[UserName]
Tulostus: kari.nordmann
Sääntökokoelma — käyttäjällä on rooli järjestelmässä
Säännön attribuuttilauseke:
[OBJECTPERMISSION.SYSTEMROLE;Name;SystemRoleId;501]
Laskettu arvo: Bruker Fagsystem X — vertailuoperaattori Er lik / jäsenyyspalvelujen tarjoajat.
Lausekkeenmuodostaja
|
Tuote |
Yksityiskohdat |
|---|---|
|
Missä |
Otsikkokuvakkeiden ilmaisujen muokkausohjelma, viestipohjien muokkaimet, eräät eHub-näytöt |
|
Toimintojen luettelo |
Valitun tyypin kaikki objektikentät sekä vakiotoiminnot |
|
Esikatselu |
Valitse testikäyttäjä/osasto/ryhmä; edellyttää pääkäyttäjän oikeuksia |
|
Säännöt |
Automaatio → Sääntöjoukot — väh immäisvalvoja |
Säännön ehdon arvolle kaksi syöttötapaa
Jokaisella sääntöjoukon Säännöt -välilehden ehdorivillä on Attribuutti (tai Argumentti)-kenttä, jossa on kaksi pientä kuvaketta, joilla voi vaihtaa syöttötilaa:
-
Pudotusvalikkomoodi (ylös-/alas-nuolipainike) — oletusasetus. Näyttää hakutoiminnolla varustetun pudotusvalikon, jossa on esillä objektin attribuuttien arvot ryhmiteltynä tyypin mukaan (käyttäjä-, ryhmä-, osasto- tai lomakeattribuutteja sen mukaan, mihin sääntöjoukkoon niitä käytetään).
-
Vapaatekstitila (näppäimistökuvake) — muuttaa kentän tavalliseksi tekstikentäksi. Käytä tätä, kun haluat kirjoittaa kiinteästi määriteltyä tekstiä tai funktiolauseketta käyttäen tässä artikkelissa aiemmin kuvattua hakasulkeiden syntaksia, esim.
[COUNTMESSAGESENT;7166].
Vapaatekstitilassa on edelleen käytettävissä automaattinen täydennys: kun kirjoitat osan funktion tai kentän nimestä (esim. [count) pinnat, joilla on vastaavia ominaisuuksia ja toimintoja, kuten [COUNTEMPLOYEE], [COUNTMEMBERS]ja [COUNTMESSAGESENT;message id].
Lausekkeen testaaminen ”Muokkaa lauseketta” -toiminnolla
Kun ehdokenttä on vapaatekstitilassa, sen vieressä oleva lisäkuvake avaa ”Muokkaa lauseketta” -valintaikkunan. Sen avulla voit testata funktiolauseketta todellisella objektilla ennen säännön tallentamista.
Valintaikkunassa näkyy:
-
Objektityyppi — sääntöjoukon ensisijainen objektityyppi (esim. Käyttäjä) ja käytettävissä olevat toissijaiset kontekstit (Funktio, Funktion alias, Tapahtuma, Historia).
-
Konteksti — testattava kohde. Valitse tietty kohde käyttämällä Hakua tai anna eADM:n valita kohde satunnaisesti valitsemalla Valitse satunnaisesti.
-
Lauseke — muokattava tekstikenttä, johon on valmiiksi syötetty ehdon nykyinen lauseke.
-
Tulos — arvioitu tulos, joka näkyy, kun olet napsauttanut Suorita-painiketta.
Kun muokkaat lauseketta, voit viedä hiiren osoittimen jonkin funktion päälle, jolloin näkyviin tulee ohjeteksti, jossa on kyseisen funktion täydellinen syntaksi, lyhyt kuvaus sekä kunkin parametrin merkitys. Ohjeteksti korostaa koko lausekkeen vihreällä ja näyttää kursorin nykyistä sijaintia vastaavan osan lihavoituna, mikä helpottaa huomattavasti pitkien tai syvästi sisäkkäisten lausekkeiden selaamista.
Huomautus: Kuten lausekkeen muodostustyökalun käytössä yleensä, lausekkeen testaaminen ”Muokkaa lauseketta” -toiminnossa edellyttää järjestelmänvalvojan käyttöoikeuksia (katso edellä oleva kohta ”Käyttöoikeustasot” ).
Vianmääritys
|
Oire |
Todennäköinen syy |
Toiminta |
|---|---|---|
|
Kirjaimellinen |
Sisäkenttä on tyhjä tai siinä on kirjoitusvirhe |
Korjaa sisäkkäisyys; tarkista objektin kenttien nimet |
|
Lausekkeen arviointivirhe |
Sisäkkäiset |
Jaa sisarkutsuiksi tai käytä |
|
Tyhjä merkkijono |
Tunnusta / käyttöoikeutta ei löytynyt |
Vahvista järjestelmän roolitunnus ja järjestelmätunnus järjestelmän käyttöoikeuksissa |
|
Väärä sijainti sähköpostissa |
Useita tehtäviä vaihtui kerralla |
Älä luota pelkästään ARRAYDIFF- ja LASTVALUE-funktioihin |
|
Esikatselu estetty |
Rooli tai suojattu kenttä |
Laajenna roolia tai yksinkertaista testilauseketta |
|
Toimii Builderissa, mutta ei viestissä |
Tapahtumavirta tarvitsee objektin historiatiedot synkronoinnista |
Suorita tuonti; tarkista merkinnän tyyppi historiasta |
|
Esikatselu ei toimi / kaatuu ilman virheilmoitusta |
|
Odotettu — laukaisun aiheuttavan viestimallin konteksti on olemassa vain varsinaisen lähetyksen aikana. Testaa ympäröivää logiikkaa ilman tätä ehtoa tai syötä väliaikaisesti todellinen |
Pikahakemisto
|
Luokka |
Toiminnot |
|---|---|
|
Päivämäärä/aika |
NÅ, NOW, DATEFORMAT, DATEDIFF, DAYOFYEAR |
|
merkkijono |
SUBSTRING, SPLIT, REPLACE, REPLACELIST, RTRIM, LTRIM, RPAD, LPAD, RIGHT, INITIALS, PRETTIFY, LOWER, UPPER, CLEAN, STRICTCLEAN, CNCLEAN, GETKEYVALUE |
|
Logiikka |
IFTHENELSE, IFEMPTYUSE, EXISTS, TRANSFORM, CONTAINS |
|
Taulukot |
COUNT, ARRAYAPPEND, ARRAYUNIQUE, ARRAYFILTER, ARRAYDIFF, ARRAYJOIN, ARRAYFOREACH, ARRAYPREFIX, ARRAYTRIM, PRUNEARRAY, UNION |
|
Turvallisuus |
HASH, PASSWORD, UNIQUE, RND, STRRND |
|
Haku |
REFERENCE, OBJECTPERMISSION, OBJECTHISTORIES, FOREACH, DESCENDANTS, SYSTEM, SELECTION, AVAILABLESYSTEM, AVAILABLEROLE, AVAILABLEDEPARTMENTS, DATAOWNER, ANTECEDANTS.SYSTEMROLE, COUNTEMPLOYEE, COUNTMEMBERS, GETLASTSYNCID, LASTVALUE |
|
Toiminnot |
ASEMA, ASEMAT, RYHMÄN ENSISIJINEN ASEMA, AKTIIVISEN ASEMAN MÄÄRÄ |
|
Viestintä |
COUNTMESSAGESENT, SYSTEMOWNER, SYNCSTEPPARAMETER, APITOKEN |
|
HTML |
HTMLLISTMEMBEROF, HTMLLISTARRAY |
|
Lomakkeet |
SYÖTÖKENTTÄ, VALINTARUUTU, PAINIKE, VALINTALISTA, VALINTAPALA, PÄIVÄMÄÄRÄKENTTÄ, ALUEKENTTÄ |
Tekoälyavustajan muistiinpanot
-
Mieluummin
[DisplayName]-tyyppiset kentät ennen niiden sijoittamista funktioihin. -
Kysy, missä ilmaisu sijaitsee: sääntökokoelma, viesti, vienti vai asiakkaan asetukset.
-
Korvaa näennäistunnukset (
501,2100) asiakkaan todellisen järjestelmärooli ja osasto tunnukset lähteestä järjestelmän käyttöoikeudet. -
Tuonnin suodatin sulkee vastaavuudet pois; synkronointivaiheen sääntöjoukko sisällyttää vastaavuudet.
-
Tapahtumaviestien kulku edellyttää synkronointikierrokselta saatua objektien historiaa.
-
Luo sisäkkäisiä esimerkkejä sisältä ulospäin — paitsi
[ARRAYFOREACH...], joka sitoo???elementtiä kohden ennen kuin mallifunktiot suoritetaan. -
Älä tee sisäkkäisiä rakenteita
[ARRAYFOREACH...]; käytä sisarkutsuja tai[ARRAYJOIN]. -
[COUNTMESSAGESENT;]kanssamessageIdomitted-sääntö arvioidaan parhaillaan lähetettävän viestimallin perusteella, joten yksi sääntökokoelma voi ohjata useita viestimalleja — mutta sen esikatselu ei toimi ilman varsinaista lähetystä. -
Säännön ehdon arvon asettamiseen on kaksi tapaa: pudotusvalikko (attribuuttivalitsin) tai vapaa teksti (näppäimistökuvake, kiinteästi määritelty teksti tai lausekkeet), ja vapaatekstitilassa on käytettävissä ”Muokkaa lauseketta” -toiminto, jonka avulla lauseketta voi testata esimerkkiobjektilla.
-
Termit: sääntökokoelma (Regelsett), viestivirta (meldingsflyt), järjestelmän käyttöoikeus (systemtilgang), käyttöoikeus (tilgang), objektin historia (objekthistorikk).