140
Ms Access
-
Zipus #20 Ti egyébként ismeritek az Access 2003-at? Mert én nem! :-( -
Zipus #19 Jó amit Rushman ír, de én a BeforeUpdate() függvénnyel egyből levizsgálnám a mezőt. Igaz itt meg kell írni hozzá a VB kódot! -
#18 jajj, kihagytam egy fontos parancsot, névszerint kilépni az eljárásból a Hiba: címke előtt, mert különben végtelen ciklusba kerül a kód! -
#17 és akkor mi baj van?
szerintem azt kellene csinálni, hogy a következő rekordra lépésnél (2105-ös hibával tér vissza, ha egy indexelt mezőben két ugyanolyan rekord van) figyeljük ezt a hibaszámot, és megjelenítünk egy párbeszédablakot, hogy elbacta a tajszámot, valahogy így:
Private Sub ujrekordCommandbar()
'az újrekord parancsgomb végzi a következő rekordra
léptetést
On Error GoTo Hiba
'hibafigyelés elhelyezése, hiba esetén ugrás a címkére
DoCmd.GoToRecord , , acNewRec
'következő rekordra lépés parancssora
Hiba:
'hibakezelés címke
If err = 2105 Then
'2105-ös hiba, tehát nem lehet a követk. rekordra lépni, tudjuk miért!
Msgbox("Hibásan adta meg a tajszámot!", vbExclamation)
DoCmd.GoToControl "tajszammezo"
'a tajszám beviteli mezőre visszük a fókuszt
Exit sub
Else
Resume 0
' egyéb hibánál vissza a hibát kiváltó sorra
End If
End Sub -
ronny666 #16 csak 1 gond van vele...
hogy akkor böki ki, hogy 2 TAJszámot vittem fel, amikor már az összes többi adatot is felvittem, s lépnék 1 következő rekordra....
nem lehet előbb vizsgáltatni valahogy? -
ronny666 #15 Fasza, thx...
így működik is a dolog -
#14 a legegyszerűbb, ha a tábla tajszám mezőjét indexeled, tehát nem lehet azonos-ra állítod.
a bonyolultabb pedig vba-ban egyrekordhalmaz létrehozásával... -
ronny666 #13 oké, hogyan lehet a vizsgálatot megcsinálni???egyszerűen nem jövök rá... -
Zipus #12 Ezt még a mező frissítése elött kell levizsgálni, nem az ürlapról való lelépés után! Akkor már hibásan felkerült az adatbázisba! -
ronny666 #11 Lenne egy másik kérdésem...
Azt, hogy lehet megoldani, ha ürlapon viszek be 1 adatot, s lelépek róla akkor csináljon egy vizsgálatot, hogy ez az adat már létezik-e, s ha igen, akkor visítson.....
Pl, ne tudjak 2 TAJ számot rögzíteni véletlenül... -
#10 jah, asszem a kópia (replica/adatbázis-többszörözés) ilyen esetekben kitűnően alkalmazható, próbáld ki (eszközök->többszörözés->kópia) mert én még nem használtam igazából... -
Zipus #9 Az ott kérdezett számlaszámproblémára nem tudtál választ adni! Van ötleted azóta? Úgy látom a leírtakból, hogy Te azért használod is az Accesst! -
#8 ja, és egyébként ez a módszer tuti tökéletesen működik, mert már többször használtam rekordszámlálásra űrlapon -
#7 gondoltam...
végre lehet hajtani minden vezérlőelemen futásidejű újralekérdezést. Ezt mondjuk a form_afterupdate() eljárásban tudod megtenni, egy vezerloelem.Requery utasítással. Ennyi -
ronny666 #6 nem jó sajnos...
a lista nem frissül a lekérdezéssel együtt, csak ha az űrlapot újraindítom.... -
ronny666 #5 megpróba, thx -
#4 legegyszerűbben: a kijelző egy lista (formázva), melynek a rekordforrása a nevezett lekérdezés. -
ronny666 #3 ez rendben van, hogy a Count paranccsal megszámolom, de, mint először is kérdeztem, "ki kellene íratnom ezt a számot (ami folyamatosan változik, a bevitt adatoktól függően) az űrlapomra. "
Na ezt, hogy veszem ki belőle?
-
#2 először is ilyen topic már van:itt
másodszor válassz összesítő lekérdezést, és azon belül a count kifejezést azon mezőben, amelyben a rekordokat meg szeretnéd számolni -
ronny666 #1 Segítsetek nekem lécci...
Ms access-ben van 1 lekérdezésem...Eddig minden ok, de nekem ki kellene számolnom, hogy hány db rekord van a lekérdezésben....
Ha elindítom a lekérdezést, akkor látom, hogy pl. 5 db rekord van benne, de ki kellene íratnom ezt a számot (ami folyamatosan változik, a bevitt adatoktól függően) az űrlapomra.
Tudja valaki a megoldást???
Plíz help