Ha vannak olyan mezői, amelyek mindig ugyanolyan formátumú adatokat tartalmaznak, akkor beviteli maszkok meghatározásával megkönnyítheti mások számára ezeknek az adatoknak a helyes rögzítését az asztali Access-adatbázisban. Beviteli maszkkal gondoskodhat például arról, hogy a telefonszám mezőbe mindig helyes formátumú telefonszámokat írjanak be.
A beviteli maszkkal csak az határozható meg, hogy az Access elfogadja-e az adatokat. A maszk nem módosítja az adatok tárolásának módját, mert ezt a mező adattípusa és egyéb tulajdonságai vezérlik. Az adatok Accessbeli tárolásának módjával kapcsolatos további tudnivalók az Adattípusok és mezőtulajdonságok – Bevezetés című cikkben olvashatók.
A témakör tartalma
A beviteli maszkok
A beviteli maszk egy karakterlánc, amely az érvényes bemeneti értékek formátumát fejezi ki. A beviteli maszkokat táblamezőkben, lekérdezésmezőkben, valamint űrlapokon és jelentéseken elhelyezett vezérlőkben is használhatja. A program objektumtulajdonságként tárolja a beviteli maszkot.
A beviteli maszkok alkalmazására általában akkor van szükség, ha fontos, hogy a bevitt értékek formátuma következetes legyen. Beviteli maszkot kell például használnia akkor, ha szeretné, hogy az Access csak tíz számjegyből álló számokat fogadjon el egy telefonszámot tároló mezőben. Ha körzetszám nélküli telefonszámot próbálnak megadni, akkor az Access mindaddig nem írja az adatbázisba az adatokat, amíg a körzetszámot be nem írják.
A beviteli mezők három része
A beviteli mezők egy kötelező és két tetszőleges részből állnak, ezeket pontosvessző választja el egymástól. Az egyes részek rendeltetése:
-
Az első rész kötelező. A maszk karaktereiből vagy karakterláncából (karaktersorozatából), továbbá helyőrzőkből és literálokból (zárójelekből, pontokból és kötőjelekből) tevődik össze.
-
A második rész nem kötelező, és a beágyazott maszkkarakterekre, valamint a mezőben való tárolásuk módjára utal. Ha a második rész értéke 0, az Access az adatokkal együtt tárolja a karaktereket is, és ha az értéke 1, csak megjeleníti, de nem tárolja a karaktereket. A második rész 1 értékre állításával adatbázis-tárterület takarítható meg.
-
A beviteli maszk harmadik része szintén tetszőleges, és helyőrzőként használható karaktert vagy szóközt tartalmaz. Az Access alapértelmezésként aláhúzásjelet (_) használ. Ha más karaktert szeretne használni, adja meg a maszk harmadik részében.
Ez a példa magyar formátumú telefonszámok megadására szolgáló beviteli maszk: (99) 000 0000;0;-:
-
A maszk kétféle helyőrző karaktert használ – a 9-est és a 0-t. A 9 a nem kötelező számjegyeket jelzi (a körzetszám megadása tetszőleges), míg a 0 a kötelezően megadandó számjegyeket jelöli.
-
A második részben álló 0 hatására az Access a maszkkaraktereket is menti az adatokkal együtt.
-
A harmadik rész az elválasztójel - karaktert határozza meg helyőrzőként az aláhúzásjel _ helyett.
Beviteli maszkokat meghatározó karakterek
Az alábbi táblázat felsorolja a beviteli maszkokban helyőrzőként és literálként használható karaktereket, és ismerteti, hogy ezek hogyan szabályozzák az adatbevitelt:
Karakter |
Ismertetés |
---|---|
0 |
A felhasználónak kötelező beírnia egy számjegyet (0-tól 9-ig). |
9 |
A felhasználó tetszőlegesen beírhat egy számjegyet (0-tól 9-ig). |
# |
A felhasználó tetszőlegesen beírhat egy számjegyet, szóközt, pluszjelet vagy mínuszjelet. Ha nem adja meg ezt a karaktert, az Access szóközt használ. |
L |
A felhasználónak kötelező egy betűt beírnia. |
? |
A felhasználó tetszőlegesen beírhat egy betűt. |
A |
A felhasználónak kötelező egy betűt vagy egy számjegyet beírnia. |
a |
A felhasználó tetszőlegesen beírhat egy betűt vagy egy számjegyet. |
& |
A felhasználónak kötelező egy karaktert vagy egy szóközt beírnia. |
C |
A felhasználó tetszőlegesen beírhat karaktereket vagy szóközöket. |
. , : ; - / |
Ezres és tizedes elválasztók, dátumelválasztók és időelválasztók. A használt karakter a Microsoft Windows területi beállításaitól függ. |
> |
Az ezt követő összes karakter nagybetűként jelenik meg. |
< |
Az ezt követő összes karakter kisbetűként jelenik meg. |
! |
A beviteli maszk nem jobbról balra, hanem balról jobbra töltődik fel. |
\ |
A közvetlenül ezt követő karakterek betűhíven jelennek meg. |
"" |
A dupla írógépi idézőjelek közé írt karakterek betűhíven jelennek meg. |
A beviteli maszkok használatára nem alkalmas esetek az Accessben
A beviteli maszk hasznos, de nem minden helyzetben üdvözítő megoldás. Nem érdemes beviteli maszkot használni, ha a következő körülmények állnak fenn:
-
Időnként olyan adatokat kell beírni, amelyek nem felelnek meg a maszknak. A beviteli maszk nem enged meg kivételeket.
-
Dátum/idő típusú mezőben dátumválasztó vezérlőt kíván használni. A beviteli maszkok nem kompatibilisek a dátumválasztó vezérlővel.
Beviteli maszk hozzáadása táblamezőhöz a Beviteli maszk varázsló segítségével
Beviteli maszkokat Szöveg, Szám (replikációs azonosító kivételével), Pénznem és Dátum/idő adattípusú mezőkkel használhat.
Megjegyzés: Ha Dátum/idő mezőhöz használ beviteli maszkot, a Dátumválasztó vezérlő abban a mezőben elérhetetlenné válik.
-
Kattintson a jobb gombbal a navigációs ablakban a táblára, majd kattintson a helyi menü Tervező nézet parancsára.
-
Kattintson arra a mezőre, amelyhez beviteli maszkot szeretne adni.
-
A Mezőtulajdonságok ablaktábla Általános lapján kattintson a Beviteli maszk tulajdonságmezőre.
-
A Beviteli maszk varázsló elindításához kattintson a Létrehozás gombra .
-
A Beviteli maszk listában jelölje ki a használni kívánt maszktípust.
-
Kattintson a Próba mezőre, és adatok beírásával tesztelje a maszk működését.
-
Ha módosítások nélkül szeretné menteni a maszkot, kattintson a Tovább gombra.
-
Adja meg, hogy a program hogyan tárolja az adatokat.
-
Kattintson a Befejezés gombra, és mentse a módosításokat.
Beviteli maszk hozzáadása lekérdezéshez
-
Kattintson a jobb gombbal a navigációs ablakban arra a lekérdezésre, amelyet módosítani szeretne, majd kattintson a helyi menü Tervező nézet parancsára.
-
Vigye a mutatót a lekérdezés tervezőrácsában annak a mezőnek az oszlopára, amelyet módosítani szeretne.
A kurzort az adott mező bármely sorába viheti.
-
A mező tulajdonságlapjának megnyitásához nyomja le az F4 billentyűt.
-
A Mezőtulajdonságok ablaktábla Általános lapján kattintson a Beviteli maszk tulajdonságmezőre.
-
Kattintson a Létrehozás gombra a Beviteli maszk varázsló elindításához, majd kövesse a varázsló utasításait.
Beviteli maszk hozzáadása űrlap- vagy jelentésvezérlőhöz
-
Kattintson a jobb gombbal a navigációs ablakban arra az űrlapra vagy jelentésre, amelyet módosítani szeretne, majd kattintson a helyi menü Tervező nézet parancsára.
-
Kattintson jobb gombbal arra a vezérlőre, amelyet módosítani szeretne, majd kattintson a Tulajdonságok parancsra a helyi menüben.
-
Az Összes lapon kattintson a Beviteli maszk tulajdonságmezőre.
-
Kattintson a Létrehozás gombra a Beviteli maszk varázsló elindításához, majd kövesse a varázsló utasításait.
Egyéni beviteli maszkok létrehozása
Bár a Beviteli maszk varázsló maszkjai a legtöbb általános formázási igényt kielégítik, olykor mégis szükség lehet a maszkok testreszabására, hogy jobban megfeleljenek a követelményeknek. Testre szabott maszkok létrehozhatók a Beviteli maszk varázsló előre megadott maszkjainak módosításával vagy az adott mező Beviteli maszk tulajdonságának manuális szerkesztésével.
A Beviteli maszk varázsló maszkjainak testreszabása
-
Nyissa meg az objektumot Tervező nézetben, és kattintson arra a mezőre, amelyre az egyéni beviteli maszkot alkalmazni szeretné.
-
Kattintson a Build a Beviteli maszk varázsló elindításához.
-
Kattintson a Lista szerkesztése gombra.
Megjelenik a Beviteli maszk varázsló testreszabása párbeszédpanel.
-
Lépjen egy új rekordra a párbeszédpanelen, és adjon meg egy új leírást a Leírás szövegmezőben.
-
A Beviteli maszk szövegmezőben a tábla listában engedélyezett karakterek alapján adjon meg karaktereket és helyőrzőket.
-
A Maszktípus legördülő listában a nyílra kattintva válassza ki a megfelelő maszktípust.
-
Kattintson a Bezárás gombra. Az új beviteli maszk megjelenik a listában.
A beviteli maszk testreszabása a mezőtulajdonságban
-
Kattintson a jobb gombbal a navigációs ablakban az objektumra, majd kattintson a helyi menü Tervező nézet parancsára.
-
Kattintson arra a mezőre, amelyhez egyéni beviteli maszkot szeretne létrehozni.
-
A Mezőtulajdonságok ablaktáblában kattintson a Beviteli maszk szövegmezőbe, és írja be az egyéni maszkot.
-
A módosítások mentéséhez nyomja le a CTRL+S billentyűkombinációt.
Szám és Pénznem mező esetében manuálisan kell megadni a beviteli maszk definícióját.
Példák beviteli maszkokra
A következő táblázatban lévő példák a beviteli maszkok használatának néhány módját szemléltetik.
Beviteli maszk |
Megfelelő érték |
Megjegyzés |
---|---|---|
(000) 000-0000 |
(206) 555-0199 |
Ebben az esetben meg kell adnia a körzetszámot, mivel a maszk azon a részén (a zárójelben lévő 000 helyen) is a 0 helyőrzőt használja. |
(999) 000-0000! |
(206) 555-0199 ( ) 555-0199 |
Ebben az esetben a körzetszám a 9 helyőrzőt használja, így a körzetszámot nem kötelező megadni. A felkiáltójel (!) miatt a maszkot balról jobbra kell feltöltetni. |
(000) AAA-AAAA |
(206) 555-TELE |
Lehetővé teszi, hogy az amerikai típusú telefonszám utolsó négy számjegyét betűkkel helyettesítse. A körzetszámban a 0 helyőrző szerepel, ezért a körzetszámot is kötelező megadni. |
#999 |
-20 2000 |
Bármilyen pozitív vagy negatív szám, négy karakternél nem hosszabb, ezres elválasztók vagy tizedesjegyek nélkül. |
>L????L?000L0 |
GREENGR339M3 MAY R 452B7 |
Kötelező (L) és nem kötelező (?) betűk, valamint kötelező számok (0) kombinációja. A nagyobb jel (>) miatt az összes betűt nagybetűként kell megadni. Ilyen típusú beviteli maszk használatához a táblamező adattípusát Szöveg vagy Feljegyzés típusra kell állítani. |
00000-9999 |
98115- 98115-3007 |
Egy kötelező irányítószám, és egy nem kötelező négyjegyű kiegészítés. |
>L<?????????????? |
Mária Péter |
Vezeték- vagy keresztnév, amelyet mindig nagybetűvel kell kezdeni. |
ISBN 0-&&&&&&&&&-0 |
ISBN 1-55615-507-7 |
Könyv ISBN száma a szöveges megjelöléssel, kötelező első és utolsó számjeggyel, valamint betűk és számok tetszőleges kombinációjával a kettő között. |
>LL00000-0000 |
DB51392-0493 |
Kötelező betűk és számjegyek kombinációja, mind nagybetűvel. Ilyen maszkot például cikkszámok és egyéb, leltározáshoz használt adatok megfelelő beírásához használhatja. |
Beviteli maszkok használata e-mail-címekhez
Mivel az e-mail címek a karakterszám tekintetében nagy változatosságot mutatnak, nem szerencsés beviteli maszkot alkalmazni az e-mail címek helyességének biztosítására. Helyette az Érvényességi szabály és az Érvényesítési szöveg tulajdonság használatát javasoljuk.
Az alábbi táblázatban látható érvényesítési szabály biztosítja, hogy a beírt e-mail cím megfeleljen az „egy vagy több karakter, @, egy vagy több karakter, pont, egy vagy több karakter” mintának. A kalman@example.com formátum például engedélyezett, míg a kalman@example,com vagy a kalman@example formátum nem. Ha valaki olyan e-mail címet ír be, amely nem felel meg az érvényesítési szabálynak, az Access nem fogadja el a beírt értéket, és megjeleníti az Érvényesítési szöveg tulajdonságban megadott szöveget. Ha az Érvényesítési szöveg mező üres, az Access egy általános üzenetet jelenít meg.
Tulajdonság |
Beállítás |
---|---|
Érvényességi szabály |
Is Null Or ((Like "*?@?*.?*") And (Not Like "*[ ,;]*")) |
Érvényesítési szöveg (tetszőleges) |
Írjon be egy e-mail címet, használja benne a @ karaktert és adja meg a teljes tartománynevet (például: endre@contoso.com). |
Ha többet szeretne tudni az érvényesítési szabályokról, illetve ha az eljárások lépésenkénti leírásaira kíváncsi, olvassa el Az adatbevitel korlátozása érvényesítési szabály alkalmazásával című témakört.