eADM-sääntöjen ilmaisuohjelma
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 |
|
|
|
”Prosjekt Alfa” -ryhmä |
|
|
[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 prosessi tarjoaa kontekstin) |
|
|
Laske mukaan vain tämän päivämäärän jälkeiset lähetykset (valinnainen) |
|
Ilmaisu |
Tulostus (dummy) |
|---|---|
|
|
|
Käyttö: ”Onko jo ilmoitettu?” -tarkistus seurantaprosessissa.
[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 |
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 |
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]. -
Termit: sääntökokoelma (Regelsett), viestivirta (meldingsflyt), järjestelmän käyttöoikeus (systemtilgang), käyttöoikeus (tilgang), objektin historia (objekthistorikk).