FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

Finnish
FI Finnish
SE Swedish
FR French
PL Polish
DE German
US English (US)
  • Log in
  • Home
  • Alusta
  • ESM
  • Muu tekninen ESM-dokumentaatio
  • Handler-dokumentaatio

Handler - Validator

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Palveluhallinta
    Matrix42 Core -ratkaisu Matrix42 Intelligence Matrix42 Professional -ratkaisu
  • Identity Governance and Administration (IGA)
    IGA-ratkaisukirjasto IGA-yleiskatsaus
  • Alusta
    ESM ESS2 ESS Efecte Chat for Service Management Lisäosat
  • Julkaisutiedot M42 Professionalille, IGA:lle ja konversationaaliselle tekoälylle
    2026.1 2025.3 2025.2 2025.1 2024.2 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Julkaisutiedot ja käytännöt
  • Muu materiaali
    Saavutettavuusselosteet Termit ja dokumentaatio-ohjeet
  • Palvelut
+ More
    • Palveluhallinta

    • Identity Governance and Administration (IGA)

    • Alusta

    • Julkaisutiedot M42 Professionalille, IGA:lle ja konversationaaliselle tekoälylle

    • Muu materiaali

    • Palvelut

Handler - Validator

Validator -käsittelijä käyttää Python -lauseketta yläattribuutin arvon validointiin. Käsittelijä laskee lausekkeen arvon ja näyttää virheen, jos lauseke palauttaa arvon false .

Lisätietoja Pythonista löytyy osoitteesta www.python.org. Pikaopas Pythoniin löytyy osoitteesta www.python.org/doc/tut. Efecte käyttää Python -toteutusta nimeltä Jython. Jython -kohtainen dokumentaatio on saatavilla osoitteessa www.jython.org.

Validator-käsittelijä validoi arvon vain silloin, kun data luodaan tai sitä muokataan käyttöliittymän kautta: tavallisessa tietokortin muokkauksessa tai monimuokkauksessa (monimuokkaus versiosta 4.1 4113 alkaen). Huomaa: Tietokortteja monimuokattaessa validointi voi epäonnistua, koska tietokortin muut kentät eivät täsmää validoinnin kanssa, mikä estää tietokortin tallentamisen. Tarkistusta ei suoriteta, jos lähdedata tuodaan Matrix42:een.

Data katsotaan kelvolliseksi, jos lausekkeen tai skriptin tulos on jokin seuraavista:

  • Tyhjä merkkijono ('' tai "").
  • Muu luku kuin nolla (0). Jython käyttää arvoa 1 totuusarvon True sijaan.
  • Onnistunut säännöllisen lausekkeen täsmäys.

Huomioi seuraavat virhetapaukset:

  • Ei-tyhjä merkkijono tulkitaan virheilmoitukseksi.
  • 0 on virheellinen. Se voi olla totuusarvolausekkeen tulos.
  • None on virheellinen. Epäonnistunut säännöllisen lausekkeen täsmäys palauttaa arvon None.

Voit käyttää Validator-käsittelijää esimerkiksi eri attribuuttien arvojen vertailuun niiden yksilöllisten attribuuttikoodien avulla yläattribuutin metadatassa.

Yläattribuutin arvoon voi viitata muuttujalla moniker _current.

Esimerkiksi varmistaaksesi, että yläattribuutti Amount on suurempi kuin Q2, liitä Validator-käsittelijä attribuuttiin Amount ja määritä seuraava Python Validator metadatan expression-kenttään: _current>[attributeCodeQ2] . Tallennettaessa Validator-käsittelijä laskee lausekkeen arvon ja palauttaa käyttäjälle virheen, jos ehto ei täyty.

Seuraavat taulukot sisältävät tietoa Validator-käsittelijän attribuuttiasetuksista ja metadatavaatimuksista. Pakolliset metatiedot on esitetty Required attribute metadata-taulukossa.

Validator-käsittelijän konfigurointi poikkeaa muista käsittelijöistä. Tarvittavat metadatan nimet on annettu valmiiksi, pääkäyttäjän tarvitsee antaa vain arvot.

Taulukko 1. Attribuutin asetukset

Käsittelijän nimi Tietotyyppi
Validator Any

Taulukko 2. Pakollinen attribuutin metadata

Nimi Arvo Kuvaus
expression [Python-lauseke]

Kelvollinen Python-lauseke (tai skripti, jos isScript on käytössä) validoinnin suorittamista varten.

Jos lauseketta ei voida jäsentää, viitatun attribuutin arvo on tyhjä tai tapahtuu tuntematon virhe, validointi menee läpi ja tallennus jatkuu.

defaultErrortext [text_validator_error] Virheteksti, joka palautetaan käyttäjälle validoinnin epäonnistuessa. Tämä voi olla pelkkää tekstiä tai esitystekstin koodi, joka tulkitaan käyttäjän valitsemalle kielelle. text_validator_error on oletusarvoinen errorcode.
isScript [on | off]

Kun arvo on on, lauseke tulkitaan Python -skriptiksi.

Skriptit ovat lausekkeita tehokkaampia ja voivat sisältää useita rivejä, silmukoita ja muita ohjausrakenteita. Ne ovat myös monimutkaisempia määrittää. Katso skriptiesimerkit alla. Jos haluat tulkita lausekkeen skriptinä, valitse tämä asetus.

Tulosarvo on asetettava muuttujaan nimeltä _result.

Lisää esimerkkikonfiguraatioita on saatavilla alla.

HUOM! Tämä toiminnallisuus ei välttämättä ole käytettävissä järjestelmässäsi lisensoinnista riippuen.

invalidOnError [on | off] Kun arvo on on, lausekkeen suorittamisessa tapahtuva virhe aiheuttaa sen, että attribuutin arvo tulkitaan virheelliseksi.

Taulukko 3. Valinnainen attribuutin metadata

Nimi Arvo Kuvaus
alwaysExecute true/false Jos tämä on true, lauseke suoritetaan (root-oikeuksin) tietokorttia tallennettaessa, kun tällä attribuutilla on arvo. Oletusarvo on false.

Validator-käsittelijä mahdollistaa myös pääsyn viitattuihin tietokortteihin. Nykyiseen korttiin voi viitata sanalla this, ja muihin tietokortteihin niiden luokka-attribuuttikoodilla, joka on määritetty yläkortissa. Tällä hetkellä tuetut menetelmät viitatuille tietokorteille ovat:

Taulukko 4. Tietokortin käyttömenetelmät

Menetelmä Palauttaa Esimerkki
get(attributecode) Yksittäinen arvo, joka löytyy annetun attribuuttikoodin kentästä. Jos attribuutti on moniarvoinen, palautetaan ensimmäinen arvo. Jos attribuutti on viite, palautetaan PythonEntity -objekti. this.get("support_person").get("email")
getAll(attributecode) Taulukko, joka sisältää annetun attribuuttikoodin kentästä löytyvät arvot. Jos attribuutti on viite, palautetaan PythonEntity-objektien taulukko. max(getAll("product_prices"))

Skriptiesimerkkejä

Varmista, että nykyisen attribuutin arvo on välillä 50–100:

50<_current<100

Tarkista, että nykyisen kentän pituus on tasan 8

len(_current)==8

Oletetaan: 1) "car" on yksittäisarvoinen viite _this_ template 2) "limit" kokonaislukuattribuutti of _car_ template 3) Tarkista, että nykyisen attribuutin arvo on pienempi kuin yksittäisen car-viitteen raja-arvo

_current<car.get("car_limit")

Päätä virheilmoitus nykyisen attribuutin ja koodilla speed_limit olevan attribuutin perusteella. Vaatii isScript -asetuksen:

if _current>speed_limit:
  _result='The value must be smaller than the speed limit!'
elif _current<0:
  _result='The value must be larger than zero!'

Tarkista, että nykyinen kenttä täsmää annettuun säännölliseen lausekkeeseen, jossa syötteen on oltava muotoa EFECTE-nnnnnn, jossa n on numero:

re.match(r"EFECTE-\d{6}",_current)

Tarkista, että nykyinen kenttä täsmää annettuun säännölliseen lausekkeeseen, jossa syötteen on alettava kirjaimella A ja numerolla:

re.match(r"A\d.*",_current)

Jos jobstate -attribuutin arvo on Closed ja travel_time tai actual_work_time -attribuutti on tyhjä, näytä virheilmoitus.

errorText = ""
if (this.get("jobstate")=="Closed" and this.get("travel_time")==None):
   errorText=errorText + "<br/>Please fill in the 'Travel time' field"
if (this.get("jobstate")=="Closed" and this.get("actual_work_time")==None):
   errorText=errorText + "<br/>Please fill in the 'Actual work time' field"
if (errorText != "" ):
   _result=errorText

Was this article helpful?

Yes
No
Give feedback about this article

Table of Contents

Related Articles

  • Yleiskatsaus käsittelijöihin
  • EQL-editori
  • Handler - IDGenerator
  • Attribute Metadata - ShowCode
  • Attribute Metadata - PrintTemplateName

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand