Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Validacija polja

[es] :: Access :: Validacija polja

Strane: 1 2

[ Pregleda: 5161 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

normandija
Srbija

Član broj: 70439
Poruke: 364
*.teol.net.



+62 Profil

icon Validacija polja17.08.2010. u 12:21 - pre 165 meseci
Imam par polja gde su sifre u pitanju pa sam htio da postavim validator koji ce onemoguciti unosenje neodgovarajucih karaktera. Pokusao sam to na ovaj nacin medjutim zadnji uslov ne funkcionise dobro i izbacuje mi access-ovu poruku o gresci. Inace treba onemoguciti sve druge karaktere sem brojeva i naravno polje ne smije biti prazno



Code:

Private Sub Sifra_racunara_txt_LostFocus()
    If IsNull(Sifra_racunara_txt) Then
    
       DoCmd.SetWarnings False
       
       MsgBox "Niste unijeli šifru racunara!"
       DoCmd.SetWarnings True
       Sifra_racunara_txt.SetFocus
       
 Else
       
    If (Sifra_racunara_txt) < 0 Then
        
       DoCmd.SetWarnings False
       
       MsgBox "Šifra racunara ne može biti negativan broj!"
       DoCmd.SetWarnings True
       Sifra_racunara_txt.SetFocus
       
 Else
 
    If Not IsNumeric(Sifra_racunara_txt) Then
         
       DoCmd.SetWarnings False
       
       MsgBox "Šifra racunara mora biti broj!"
       DoCmd.SetWarnings True
       Sifra_racunara_txt.SetFocus
       
    
       
    Exit Sub
        
    End If
    End If
    End If
       
End Sub


[Ovu poruku je menjao normandija dana 17.08.2010. u 14:57 GMT+1]

[Ovu poruku je menjao normandija dana 17.08.2010. u 14:58 GMT+1]
Bolje izgubiti trenutak u zivotu,nego zivot u trenutku !!!
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Validacija polja17.08.2010. u 14:00 - pre 165 meseci
AKo su podaci zaista brojevi, postavi da je data type za polje neki numericki tip.

Ako je polje text, pa se dozvoljavaju sanmo brojevi, recimo maticni broj, onda mozes da se igras sa LIKE, na primer u VAlidation rule stavis nesto kao
[Code]
NOT LIKE '*[A,Z]*'
[\code]
Ponudjeni izraz ne dozvoljava slova, ali mogu da prodju brojevi i specijalni znaci. 123-45 je OK. A123 nece proci.


A moze i nesto ovako, mada je bolje resiti sa LIKE i na nivou tabele.

'Add 1 TextBox To Your Form.
'Insert the following code to your form:

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii < 47 Or KeyAscii > 57 Then KeyAscii = 0
End Sub

 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Validacija polja17.08.2010. u 14:14 - pre 165 meseci
Vise o tome kako se sa LIKE vrsi validacija, imas ovde

http://office.microsoft.com/en...like-operator-HP001032253.aspx

http://office.microsoft.com/en...x?CTT=5&origin=HP001032253

i narocito ovo

http://www.devguru.com/technologies/jetsql/quickref/like.html
 
Odgovor na temu

normandija
Srbija

Član broj: 70439
Poruke: 364
*.teol.net.



+62 Profil

icon Re: Validacija polja18.08.2010. u 06:40 - pre 165 meseci
ti podatka,tj tip polja u tabeli je postavljen kao Number pa me zanimalo samo na koji nacin preko VB mogu da zabranim unos svih mogucih znakova sem brojeva ...
Bolje izgubiti trenutak u zivotu,nego zivot u trenutku !!!
 
Odgovor na temu

pmiroslav
Miroslav
Osijek

Član broj: 57354
Poruke: 298
*.dsl.optinet.hr.



+2 Profil

icon Re: Validacija polja18.08.2010. u 07:27 - pre 165 meseci
Ja sam primjetio da ako tip polja u tablici postaviš kao Number, sam Access ti ne dozvoljava da uneseš bilo kakav znak osim broja.
 
Odgovor na temu

sule99
student

Član broj: 227708
Poruke: 93
*.adsl.net.t-com.hr.



+1 Profil

icon Re: Validacija polja18.08.2010. u 08:01 - pre 165 meseci
mislim da se to može riješiti sa maskom...

ja na jednoj formi koristim matični broj koji može biti samo znamenke i pod opcijom input mask za to polje imam sljedeću 99999999;0;_

ima različitih kombinacija, pa trebaš viditi šta ti treba (u helpu pogledaj malo textbox.inputmask property)

:)
 
Odgovor na temu

smal
Slobodan Maljković
Kragujevac, Srbija

Član broj: 228672
Poruke: 286
*.dynamic.sbb.rs.



+13 Profil

icon Re: Validacija polja18.08.2010. u 10:20 - pre 165 meseci
Input mask može da bude koristan samo ako je broj cifara fiksan i unapred poznat, kao za JMBG ili PIB na pr. Za sve ostale situacije, kao što je unos količina, koje mogu biti i celi i decimalni brojevi i sl, ne vrši posao.

Po meni, najefikasniji način je blokiranje nenumeričkih tastera If KeyAscii uslovom datom na početku teme, jer tako već na startu korisnik brzo ukapira da ne može da ukuca pogrešne karaktere. Svaka obrada greške se dešava naknadno, kada su slova već otkucana, a Msgbox brzo dosadi i iritira pošto su tipfeleri česti... Zaključani tasteri su zato idealno rešenje.
 
Odgovor na temu

sule99
student

Član broj: 227708
Poruke: 93
*.adsl.net.t-com.hr.



+1 Profil

icon Re: Validacija polja18.08.2010. u 11:10 - pre 165 meseci
smal, u pravu si potpuno. No maskom možeš staviti raspon do koliko želiš znamenaka(npr. 20 bi mislim njemu bilo dovoljno), bez vodečih nula i samo brojevi. I ako netko krene tipkat slova, ništa se se događa, ni msgbox ni ništa drugo, jednostavno ne može se upisati. a puno je jednostavnije i bez kodiranja. to je samo neko ovako moje mišlljenje :) ako ne treba s vodečim nulama, onda mislim da upisuje 00000 zavisi do koliko znameni mu ide šifra najduža... ovo sve pišem napamet, ali mislim da radi :)
 
Odgovor na temu

normandija
Srbija

Član broj: 70439
Poruke: 364
*.teol.net.



+62 Profil

icon Re: Validacija polja18.08.2010. u 11:45 - pre 165 meseci
Resio sam sa
Code:

Private Sub Sifra_racunara_txt_KeyPress(KeyAscii As Integer)
    If KeyAscii < 47 Or KeyAscii > 57 Then
    
       DoCmd.SetWarnings False
       MsgBox "Sifra ne moze sadrzati slova i specijalne znakove!"
       
       DoCmd.SetWarnings True
        
   
     Exit Sub
     
     End If
End Sub


ali recimo kad upisem ne dozvoljeni karakter,recimo - ili slovo neko,on mi baci porukicu da su slova zabranjena,ali kad kliknem na Backspace da obrisem slovo on opet smara sa porukicom Slova nisu dovoljena,samo me zanima kako to resiti da se ne pojavljuje poruka na brisanje karaktera
Bolje izgubiti trenutak u zivotu,nego zivot u trenutku !!!
 
Odgovor na temu

smal
Slobodan Maljković
Kragujevac, Srbija

Član broj: 228672
Poruke: 286
*.dynamic.sbb.rs.



+13 Profil

icon Re: Validacija polja18.08.2010. u 12:35 - pre 165 meseci
Nedostaje ti par redova, odnosno nisi mu rekao šta da radi ako se pritisne nedozvoljeno dugme, a i ne treba DoCmd.SetWarnings. Dakle kod treba da izgleda ovako:
Code:

If KeyAscii = 8 Or KeyAscii = 13 Then
    Else
        If KeyAscii < 48 Or KeyAscii > 57 Then
            KeyAscii = 0
            MsgBox "Šifra ne može sadržati slova i specijalne znakove", vbCritical, "Obaveštenje"
            
        End If
End If

 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Validacija polja18.08.2010. u 16:07 - pre 165 meseci
Ama ljudi, Miroslav lepo kaze "...ako tip polja u tablici postaviš kao Number, sam Access ti ne dozvoljava da uneseš bilo kakav znak osim broja. "

Resavate problem koji ne postoji.
 
Odgovor na temu

normandija
Srbija

Član broj: 70439
Poruke: 364
*.teol.net.



+62 Profil

icon Re: Validacija polja19.08.2010. u 12:57 - pre 165 meseci
ok,slazem se,ali kako da zamijenim onu njegovu default-nu poruku o gresci ??
Bolje izgubiti trenutak u zivotu,nego zivot u trenutku !!!
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Validacija polja19.08.2010. u 13:58 - pre 165 meseci
Citat:
ok,slazem se,ali kako da zamijenim onu njegovu default-nu poruku o gresci ??

To je vec drugaciji problem.

Ta greska ima svoj broj, iako se ne vidi mozda na poruci. Ako se vidi, zapisi taj broj na parce papira.

Ako se ne vidi, zapsis poruku, prepisi poruku onako kako pise. Onda id na temu "Baza znanja" i iskopaj tamo poruku gde pise kako se izlistavaju u tabelu sve Accesiove JET greske. Pretragom delova teksta koji si zapisao, pronandji poruku i vidi njen broj.

Onda otvori form properties i idi idi na form ERROR event (na dnu je liste). Klikni Help i videces kako se Error event koristi. A imas i negde na forumu, ovde, pisao sam bar 2-3 puta o tome, (ja nazalost ne umem da pretrazujem forum, pa ti ne mogu reci gde je to).

Uglavnom, formin error event ti dozvoljava da uhvatis greske koje nisu run-time, nisu programske. To su greske za koje ne dobijes broj na poruci (unos duplikata, narusavanje ref. integriteta, ovo sto se tebi desava i slicno). U form error eventu imas opciju da izbegnes originalnu poruku i da je zamenis sopstvenom.

Sad an posao, pa kad zapnes, ti se javi.


A bilo bi stvarno korisno da prilozi bazu sa test podacima, lakse je pomoci kad vidimo problem nego kad nam objasnjavas. Ima te u 4-5 tema i nigde nisi prilozio nista osim screen-shot koda, koji nije dovoljan. Pomisli malo da i mi nemamo beskonacno vremena da pravimo baze sa primerima koji bi ti pomogli.

Ako ti nemas vremena da podesis svoju 'tajnu' bazu tako da je mozemo videti, zasto bi mi imali vremena da pravimo primere? Tebi treba pomoc, a ne nama.
 
Odgovor na temu

pmiroslav
Miroslav
Osijek

Član broj: 57354
Poruke: 298
*.dsl.optinet.hr.



+2 Profil

icon Re: Validacija polja19.08.2010. u 14:12 - pre 165 meseci
Možda za početak da pokušaš ovako:
U formi u kojoj upisuješ podatak, na događaj On Error upiši

MsgBox "Upisali ste pogrešan podatak", vbInformation
Response = 0 'Isključuje Access poruku
 
Odgovor na temu

smal
Slobodan Maljković
Kragujevac, Srbija

Član broj: 228672
Poruke: 286
*.dynamic.sbb.rs.



+13 Profil

icon Re: Validacija polja19.08.2010. u 14:39 - pre 165 meseci
I šta je onda bolje - da program javlja grešku kad korisnik već unese pogrešne podatke, ili da mu se odmah na startu ne dozvoli da greši?
 
Odgovor na temu

Trtko
Koprivnica

Član broj: 69494
Poruke: 695
*.adsl.net.t-com.hr.



+8 Profil

icon Re: Validacija polja19.08.2010. u 17:30 - pre 165 meseci
O tome bi se dalo raspravljati, naravno da je bolje da javiš korisniku poruku koju će razumjeti.
No greške mogu biti drugačijeg tipa , pa ponekad je potrebno i provjeravati što unaša korisnik.

npr, Ima input, tj unos gdje mora unjeti dužinu trupca, umjesto 4 m zabunom ukuca 40 m
što naravno nije moguće ..... itd , stoga sve ovisi o tebi, koliko želiš da ti je dobar PROGRAM
 
Odgovor na temu

normandija
Srbija

Član broj: 70439
Poruke: 364
*.teol.net.



+62 Profil

icon Re: Validacija polja20.08.2010. u 12:45 - pre 165 meseci
ma kakva tajna covece,evo zakacio sam bazu pa pogledaj. Da mi je da ne zapetljavam mnogo to,nego jednostavno da kad krene da unosi recimo slova odmah izbaci poruku o gresci,ja sam pokusao sa ascii da to uradim vidjecete u bazi,ali recimo ako ukuca slobo on baci poruku,a kad kliknem backspace da obrisem karakter opet se pojavi poruka,pa to malo dosadno,pa ako mozete pogledati malo detaljnije taj primjer. i nece da mi vrati fokus na polje nad kojim se desila greska ima i to u kodu,pa pogledajte,evo zakacio sam

Zakacena baza

Bolje izgubiti trenutak u zivotu,nego zivot u trenutku !!!
 
Odgovor na temu

Zidar
Canada

Moderator
Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Validacija polja20.08.2010. u 13:43 - pre 165 meseci
Moze li da zakacis bazu uz poruku, bez Rapid Share? ARJ ili ZIP
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2828



+45 Profil

icon Re: Validacija polja20.08.2010. u 14:44 - pre 165 meseci
Ako neko nezna da zakači poruku neka pogleda u gornjem meniju FAQ 22.
Prikačeni fajlovi
 
Odgovor na temu

smal
Slobodan Maljković
Kragujevac, Srbija

Član broj: 228672
Poruke: 286
*.dynamic.sbb.rs.



+13 Profil

icon Re: Validacija polja20.08.2010. u 14:55 - pre 165 meseci
@normandija

Samo skloni znak & iz Input Mask, i na On Key Press stavi kod koji sam postavio gore (zahvaliti Zoranu Eremiji), i biće sve OK.
 
Odgovor na temu

[es] :: Access :: Validacija polja

Strane: 1 2

[ Pregleda: 5161 | Odgovora: 20 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.