<< Click to Display Table of Contents >> Ellenőrzési szabály |
![]() ![]() ![]() |
A funkcióval mentéskori ellenőrzési szabályokat hozhatunk létre, amelyekkel korlátozhatjuk a rögzíthető értékeket, karaktereket, kötelezővé tehetjük a kívánt mezők kitöltését vagy szűkíthetjük a legördülő mezőben megjelenő adatok kiválasztható tételeit. Új ellenőrzési szabály létrehozásakor vagy módosításkor minden esetben újra kell indítani a programot. Ellenőrzési szabályok szintaktikájára vonatkozó segítséget az alábbi linkekről kaphatunk:
|
Ellenőrzési szabály |
Link |
---|---|---|
|
Kötelező |
|
|
Érték összehasonlítás |
|
|
Érték tartomány |
|
|
Egyedi kombináció |
|
|
Szöveg összehasonlítás |
|
|
Reguláris kifejezés |
|
|
|
Ellenőrzés típus: | Hiba / Figyelmeztetés / Információ, választással beállítható, hogy rögzítéskor mit tegyen a program. |
Ellenőrzési szabály: | Kötelező / Érték összehasonlítás / Érték tartomány / Egyedi kombináció / Szöveg összehasonlítás / Reguláris kifejezés / Kifejezés, választással meghatározható az ellenőrzés szabálya. Kitöltése kötelező. Kötelező: a mező kitöltése kötelező. Működése függ az ellenőrzés típustól is. Példa: Amennyiben az Ellenőrzés típus = [Hiba] és az Ellenőrzési szabály = [Kötelező], akkor az adat mentésekor, ha a hivatkoztatott mező értéke üres, akkor nem lehet menteni. Érték összehasonlítás: az Adat típus és a hozzá tartozó Tulajdonság kiválasztása után meg kell adni, az Érték összehasonlítás típusa mezőben az összehasonlítás típusát, majd tulajdonság típusa szerint megjelenő Szám, Dátum, Felsorolás, vagy Igaz/Hamis mező értékét is definiálni kell. Példa: Kereskedelem vevői rendelés sor Nettó összeg Kisebb 1.000.000,- beállítás esetén millió feletti nettó sorösszeg esetén hibaüzenetet fogunk kapni. Érték tartomány: A meghatározott mező értékének tartományon belüli rögzítési lehetőségét ellenőrzi az így beállított szabály. Egyedi kombináció: Egyedi mezőérték rögzítését lehet előírni a szabállyal. A Tulajdonságok közül több is kiválasztható, azaz több mező együttes értékének egyedisége is garantálható. Szöveg összehasonlítás: Feltételeket határozhatunk meg szöveges mezőkre. Reguláris kifejezés: szintaktikai szabályokat lehet vele előírni. A ^[A-Za-z0-9]*$ jelenti, hogy a szövegbe ne lehessen szóközt írni. Kifejezés: Amikor a "Kifejezés" mezőben megadott kifejezés az adott objektumon hamis, akkor váltódik ki a hiba/figyelmeztetés. |
Adat típus: | Ki kell választani, hogy mely bevitelben történjen az ellenőrzés. |
Tulajdonság: | Mező választás, amelyre történik majd az ellenőrzés. |
Tulajdonságok: | Mezők választása, amelyre történik majd az ellenőrzés. |
Érték összehasonlítás típusa: | Egyenlő / Nagyobb / Nagyobb egyenlő / Kisebb / Kisebb egyenlő / Nem egyenlő, választással megmondjuk, hogy az összehasonlítás hogyan működjön. |
Értékmező: | Az itt megadott értékkel történik az összehasonlítás. |
Szám: | Ellenőrzési szabály = [Érték összehasonlítás, Érték tartomány] szám jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy az összehasonlítás mely számmal történjen meg, illetve Érték tartomány esetén mi legyen a tartomány kezdete. |
Számig: | Ellenőrzési szabály = [Érték tartomány] szám jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy mi legyen a tartomány vége. |
Dátum: | Ellenőrzési szabály = [Érték összehasonlítás, Érték tartomány] dátum jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy az összehasonlítás mely dátummal történjen meg, illetve Érték tartomány esetén mi legyen a tartomány kezdete. |
Dátumig: | Ellenőrzési szabály = [Érték tartomány] dátum jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy mi legyen a tartomány vége. |
Felsorolás: | Ellenőrzési szabály = [Érték összehasonlítás] felsorolt típus jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy az összehasonlítás mely felsorolt típus értékkel történjen meg. |
Igaz/Hamis: | Ellenőrzési szabály = [Érték összehasonlítás] logikai jellegű Tulajdonság választása esetén megjelenő mező, amelyben megadhatjuk, hogy az összehasonlítás mely logikai értékkel történjen meg. |
I/N, Logikai jellegű érték összehasonlítás esetén megjelenő mező, amelyben megadhatjuk, hogy az összehasonlítás mely logikai értékkel történjen meg.
Szöveg összehasonlítás típusa: Tartalmazza / Végződik / Egyenlő / Nem egyenlő / Kezdődik, választással megadhatjuk, hogy mire történjen az összehasonlítás. Ellenőrzési szabály = [Szöveg összehasonlítás] esetén jelenik meg a mező.
Kis-és nagybetű nem különbözik: | I/N, Ellenőrzési szabály = [Szöveg összehasonlítás] esetén jelenik meg a mező. |
Kifejezés: | Szöveg összehasonlítás esetén a szöveg, amellyel az összehasonlítás fog történni, Reguláris kifejezés esetén a kifejezés, amire történik az ellenőrzés. Ellenőrzési szabály = [Szöveg összehasonlítás, Reguláris kifejezés, Kifejezés] esetén jelenik meg a mező. Kifejezés szabálytípus esetén a mező végén lévő ... megnyomására megjelenő kifejezés szerkesztővel lehet a szűkséges kifejezést megszerkeszteni. |
Üres vagy null értékek kihagyása: | I/N, Bejelölése esetén az ellenőrzés nem fut le üres mezőre. Abban az esetben értelmezhető, ha olyan mezőre vonatkozik az ellenőrzési szabály, ami üresen is hagyható. |
Aktív: | I/N |
Feltétel terület: |
Az alfülön adható meg az a feltétel, amelyre szűkítve fog az ellenőrzés történni.
Lásd fenti kép.
Ellenőrzés típus: Figyelmeztetés, Ellenőrzés szabály: Reguláris kifejezés, Adat típus: Partner, Tulajdonság, Adószám, Kifejezés:
^\d{8}\-[1-5]\-(?:0[2-9]|[13][0-9]|2[02-9]|4[0-4]|51)$
Feltétel(ek), hogy pl csak a Belföldi Vevőre ellenőrizzen:
Partner típus Egyenlő Vevő
Általános ügyviteli kategória.Megnevezés Egyenlő Belföldi
Partner ügyviteli kategória.Megnevezés Egyenlő Belföldi vevő adóalany
Amennyiben megnézzük, hogy az adószám hogyan épül fel (pl. a wikipédia-oldalon), akkor látható, hogy az utolsó két jegy a székhely szerinti illetékes adóhatóság kódját tartalmazza. A trükk az egészben annyi, hogy nem teljesen "lyukmentes" számtartomány, így - ha az alapvető formai ellenőrzésbe némi tartalmit is bele szeretnénk vinni - kénytelenek vagyunk a reguláris kifejezés-mintába is "alternatívákat" megfogalmazni. Nézzük, milyen értékeket vehet fel az utolsó két számjegy:
- ha az első számjegy 0, akkor a második 2-9 lehet (mivel nincs 00-s vagy 01-es kód),
- ha az első számjegy 1 vagy 3, akkor a második 0-9 lehet,
- ha az első számjegy 2, akkor a második 0 vagy 2-9 lehet (mivel nincs 21-es kód),
- ha az első számjegy 4, akkor a második 0-4 lehet (csak 40-44-ig van),
- ha az első számjegy 5, akkor a második 1 lehet (csak 51-es kód van).
A reguláris kifejezés-mintában semmi mást nem csinálunk, mint ezeket a szabályokat "lefordítjuk" az illető reguláris kifejezés-nyelvjárásra. Ezt - ebben az esetben - azért tudjuk megtenni, mivel ehhez nem kell semmilyen "mögöttes" algoritmus (ellentétben pl. a törzsszám-rész ellenőrző számjegyéhez), pusztán egyezés-vizsgálat (ami meg pont a reguláris kifejezések lényege).
A bevitelekben rögzítéskor ehhez hasonló hibaüzeneteket kapunk, ha a beállított ellenőrzési szabály szerint nem megfelelő adatokat rögzítettünk:
Az adatok érvényességének ellenőrzése során problémák merültek fel. Kérjük, ezek megértéséhez és javításához olvassa el az alábbi problémákat.
Cél Hibaüzenet
'' (Kereskedelem vevői rendelés, 85ac39a4-305d-4539-a76d-4730b5e61a8d) A következő tulajdonságok kombinációjának egyedinek kell lennie: Company, Partner. A következő objektumok találhatók:VREN/1/000107 (147), VREN/1/000112 (153), VREN/1/000115 (156), VREN/1/000122 (164), VREN/1/000124 (165), VREN/1/000125 (166), (167), (169)