[ tranzik @ 10.02.2004. 00:53 ] @
Kakvu procedu treba da napisem za taster koji treba da obrise iztabele podatke sloga koji je prikazan (npr. brisanje nekog radnika iz tabele 'radnici')?
Postoji wizard za ovo, ali nesto ne radi kako treba - ako kliknem na 'delete', a zatim na 'cancel' kada mi se pojavi dijalog 'da li ste sigurni...', access javlja gresku.
Anyway, bio bih vam mnoogo zahvalan ako bi mi neko objasnio neki alternativan nacin da obrisem slog iz tabele...
[ vbraca @ 11.02.2004. 06:29 ] @
Citat:
tranzik:
Postoji wizard za ovo, ali nesto ne radi kako treba - ako kliknem na 'delete', a zatim na 'cancel' kada mi se pojavi dijalog 'da li ste sigurni...', access javlja gresku.


Koju gresku ?
[ Simke @ 11.02.2004. 07:44 ] @
Pretpostavljam da mu je u opcijama stavljeno da pita za konfirmaciju ako radi delete i update. Pritiskom na cancel ili no Access daje "gresku" koja kaze nesto kao command was canceled.

Iskljuci u opcijama delete / insert confirmations i napisi custom VBA code koji ce isto pitati korisnika zeli li da obrise rekord li ne.
[ vbraca @ 11.02.2004. 18:54 ] @
Pre bih rekao da je problem u relacijama izmedju tabele "radnici" i drugih tabela - pa nebi valjda postovao za obicno DoCmd.SetWarnings True(False) !
Ali ajde da sacekamo da se momak javi ponovo !
[ tranzik @ 11.02.2004. 22:44 ] @
Greska kaze:
"Run-time error '2501';
The DoMenuItem action was canceled"

evo, shvatio sam i gde je greska: proceduru koju wizard napravi, a koja glasi:


Private Sub UkiniRadnoMesto_Click()
On Error GoTo Err_Command7_Click

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70

Exit_UkiniRadnoMesto_Click:
Exit Sub

Err_UkiniRadnoMesto_Click:
MsgBox Err.Description
Resume Exit_UkiniRadnoMesto_Click

End Sub


ja sam prepravio na sledece:


Private Sub UkiniRadnoMesto_Click()

DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70

End Sub


kad vratim naredbe za kontrolu gresaka, sve je u redu.

Elem, sve je to krenulo tako sto sam hteo da pri brisanju sloga access ne izbacuje msgbox sa porukom na engleskom, vec da napravim svoju poruku na srpskom. To sa ova dva reda nece da radi jer ocigledno jedan od njih ima neki . Probao sam da obrisem po jedan red, i gornji i donji, ali se ni u jednom slucaju nista ne desava.
Zna li neko sta ova dva reda (tacnije 8 i 6 u njima) znace?

Eto, zato bih voleo da znam neki lepsi nacin brisanja sloga .:)
[ vbraca @ 12.02.2004. 07:04 ] @
Private Sub UkiniRadnoMesto_Click()
Dim odgovor As Byte

odgovor = MsgBox("Ti bi da mi ukines radno mesto i ostavis me na ulici sa tri mala deca ?", vbYesNo)
Select Case odgovor
Case 6
DoCmd.SetWarnings False
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
DoCmd.DoMenuItem acFormBar, acEditMenu, 6, , acMenuVer70
DoCmd.SetWarnings True
Case Else
Exit Sub
End Select

End Sub

E sad mozes i sam da se igras sa MsgBox-om, da proveris ko je korisnik koji brise, da ostavis trag o brisanju u nekoje ObrisaniSlogovi tabeli ...

[ tranzik @ 14.02.2004. 01:49 ] @
:)))
elegantno, nemam reci. Zas'o si mu u sustinu :)

jedino jos ako bi mogao da mi objasnis one brojeve (8 i 6) i da li umesto njih moze nesto drugo, jasnije da se stavi (ako ne preterujem )
hvala u svakom slucaju!
[ vbraca @ 14.02.2004. 17:46 ] @
Citat:
tranzik:

jedino jos ako bi mogao da mi objasnis one brojeve (8 i 6) i da li umesto njih moze nesto drugo, jasnije da se stavi (ako ne preterujem )


Kratko receno - pocni da koristis HELP sistem Access-a - i sve ce ti se samo kasti !