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

Problem sa bazom podataka

[es] :: Visual Basic 6 :: Problem sa bazom podataka

[ Pregleda: 4619 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Problem sa bazom podataka11.12.2004. u 19:17 - pre 235 meseci
Imam jedan problem. Radim bazu podataka. Imam jedan listbox, command buttone (Novi unos, Izbrisi unos, Promijeni unos, Sačuvaj, Odustani) i textboxove (Ime, Prezime, Godina rođenja itd.)
Napravim cijeli kod i sve radi OK. Kliknem Novi unos, textboxovi vise nisu locked i upišem što treba, kliknem Sačuvaj i Prezime se pojavi u listboxu, odnosno, doda se u bazu podataka.
No, pojavljuje mi se problem. Ponekad, kad kliknem Promijeni unos i promijenim unos,
prezimena u listboxu se promijene na način kako ne bi trebala. Ostane mi unos kojeg sam mijenjao, pojavi se stari unos i ostali se izbrišu. No, to mi se pojavi i jos katkad, kad npr.
Brišem unos itd.
Kako da to riješim?
Ako niste skužili, mogu priložiti kod.
::::gvero::::
 
Odgovor na temu

Shadowed
Vojvodina

Član broj: 649
Poruke: 12848



+4784 Profil

icon Re: Problem sa bazom podataka11.12.2004. u 19:27 - pre 235 meseci
Bilo bi dobro.
Ja nisam ukapirao tacno sta ostaje sta ne. Obrise se sve osim tog unosa koji si menjao? Da li uspe izmena (ostaje stara verzija, nova ili obe)?
 
Odgovor na temu

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Re: Problem sa bazom podataka12.12.2004. u 18:26 - pre 235 meseci
ma kako kad.
npr. idem Novi unos i stavim isto prezime kao jos jedno u listboxu onda mi ostanu samo novi, pa ako izbrisem jednog, pojavi se i stari i svi ostali. ako izadem pa ponovno udem, ponovno je normalno, uz sve one i nove i stare unose.
ma cudno skroz.
ne kuzim nacin kako se mijenja.
I to za svaku bazu podataka koju radim na taj nacin.
onda je greska u kodu.
Evo kod: (Na Project-References mi je ukljucen Microsoft DAO 3.6 Object Library) --ovo mi je nešto sa zadacima, u listbox ulazi naslov zadatka, ma skuzit cete
znaci, imam 1listbox nazvan lstdata, Command button za Novi zadatak nazvan Command1,
Uredi zadatak: Command2, Izbrisi zadatak: Command3, Sacuvaj: Command5, Odustani: Command6, textboxovi: za naslov: Text2, za Sadrzaj: Text3, za DatumVrijeme: Text4
Code:

Option Explicit
Dim db As Database
Dim rs As Recordset
Dim ws As Workspace
Dim max As Long
Dim i As Long
Dim errormsg
Dim dbedit
Dim dbadd

Private Sub Command1_Click()

Text2.Text = ""
Text3.Text = ""
Text4.Text = ""
Text2.Locked = False
Text3.Locked = False
Text4.Locked = False
Command5.Enabled = True
Command6.Enabled = True
Command1.Enabled = False
Command2.Enabled = False
Command3.Enabled = False
Command4.Enabled = False
dbadd = True
Text2.SetFocus
End Sub

Private Sub Command2_Click()

Text2.Locked = False
Text3.Locked = False
Text4.Locked = False
Command1.Enabled = False
Command2.Enabled = False
Command3.Enabled = False
Command4.Enabled = False
Command5.Enabled = True
Command6.Enabled = True
dbedit = True
End Sub

Private Sub Command3_Click()

errormsg = MsgBox("Jeste li sigurni da želite obrisati ovaj zadatak?", vbQuestion + vbYesNo, "Brisanje zadatka")
If errormsg = vbYes Then
rs.Delete
Set rs = db.OpenRecordset("Zadaci", dbOpenTable)
list
Text2.Text = vbNullString
Text2.Locked = True
Text3.Text = vbNullString
Text3.Locked = True
Text4.Text = vbNullString
Text4.Locked = True
Command1.Enabled = True
Command2.Enabled = True
Command3.Enabled = True
Command4.Enabled = True
Command5.Enabled = False
Command6.Enabled = False
Else
Exit Sub
End If
frmGlavna.Caption = "U bazi je trenutno zadataka: " & rs.RecordCount
End Sub

Private Sub Command4_Click()
db.Close
End
End Sub

Private Sub Command5_Click()
If dbadd = True Then
Call add
ElseIf dbedit = True Then
Call edit
End If
End Sub

Private Sub Command6_Click()

Text2.Text = vbNullString
Text2.Locked = True
Text3.Text = vbNullString
Text3.Locked = True
Text4.Text = vbNullString
Text4.Locked = True
Command1.Enabled = True
Command2.Enabled = True
Command3.Enabled = True
Command4.Enabled = True
Command5.Enabled = False
Command6.Enabled = False
Set rs = db.OpenRecordset("Zadaci", dbOpenTable)
list
End Sub

Private Sub Form_Load()

Set ws = DBEngine.Workspaces(0)
Set db = ws.OpenDatabase("C:\tasks\tasks.mdb")
Set rs = db.OpenRecordset("Zadaci", dbOpenTable)
list
frmGlavna.Caption = "U bazi je trenutno zadataka: " & rs.RecordCount

End Sub

Private Function list()

If rs.RecordCount = 0 Then
errormsg = MsgBox("Nema zadataka", , "Upozorenje")
End If

rs.MoveLast
rs.MoveFirst

max = rs.RecordCount
rs.MoveFirst
lstdata.Clear
For i = 1 To max
lstdata.AddItem rs("Naslov")
rs.MoveNext
Next i
End Function

Private Sub lstdata_Click()
Set rs = db.OpenRecordset("Select * from Zadaci where Naslov = '" & Trim(lstdata.list(lstdata.ListIndex)) & "'")
rs.MoveFirst
Text2.Text = rs("Naslov")
Text3.Text = rs("Sadrzaj")
Text4.Text = rs("DatumVrijeme")
Command2.Enabled = True
Command3.Enabled = True
End Sub

Public Function add()

If Text2.Text = "" Or Text3.Text = "" Or Text4.Text = "" Then
errormsg = MsgBox("Sva polja moraju biti ispunjena!", vbCritical, "Upozorenje")
Exit Function
End If
rs.AddNew
rs("Naslov") = Text2.Text
rs("Sadrzaj") = Text3.Text
rs("DatumVrijeme") = Text4.Text

rs.Update
Text2.Text = vbNullString
Text2.Locked = True
Text3.Text = vbNullString
Text3.Locked = True
Text4.Text = vbNullString
Text4.Locked = True


Command1.Enabled = True
Command2.Enabled = True
Command3.Enabled = True
Command4.Enabled = True
Command5.Enabled = False
Command6.Enabled = False

list
frmGlavna.Caption = "U bazi je trenutno zadataka: " & rs.RecordCount
End Function

Public Function edit()

If Text2.Text = "" Or Text3.Text = "" Or Text4.Text = "" Then
errormsg = MsgBox("Sva polja moraju biti ispunjena!", vbCritical, "Upozorenje")
Exit Function
End If
rs.edit
rs("Naslov") = Text2.Text
rs("Sadrzaj") = Text3.Text
rs("DatumVrijeme") = Text4.Text
rs("Gotovo") = Option1.Value
rs.Update
Text2.Text = vbNullString
Text2.Locked = True
Text3.Text = vbNullString
Text3.Locked = True
Text4.Text = vbNullString
Text4.Locked = True

Command1.Enabled = True
Command2.Enabled = True
Command3.Enabled = True
Command4.Enabled = True
Command5.Enabled = False
Command6.Enabled = False

Command1.SetFocus

Set rs = db.OpenRecordset("Zadaci", dbOpenTable)
list

End Function

::::gvero::::
 
Odgovor na temu

GoranVucicevic
Novi Sad

Član broj: 28045
Poruke: 66
*.neobee.net.

Sajt: www.clickersoftware.com


Profil

icon Re: Problem sa bazom podataka12.12.2004. u 20:41 - pre 235 meseci
Ja bih ti pomogao, ali kada vidim one silne Text1, Text2....., Command1, Command2.... zaboli me glava u momentu.
Vidi: GoranVuc #4934
 
Odgovor na temu

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Re: Problem sa bazom podataka12.12.2004. u 21:51 - pre 235 meseci
pa ignoriraj te nevazne dijelove koda i predi na one u kojima bi mogao biti problem.
::::gvero::::
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Problem sa bazom podataka12.12.2004. u 23:11 - pre 235 meseci
Prva greška koju sam primetio je kod boolean promenljivih dbadd i dbedit.Naime u Command1 koji ti služi za nov unos postavljaš dbadd na True, a nigde je ne vraćaš na false, a pošto imaš Command5 koji služi da sačuvaš stanje (bez obzira da li dodaješ novi unos ili edituješ), on svaki put kad nešto edituješ dodaje i novi unos, što pravi pometnju.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Re: Problem sa bazom podataka13.12.2004. u 19:59 - pre 235 meseci
e, hvala puno, mislim da je to bio taj problem.
kad bih u kodu trebao dbadd postaviti na false?
::::gvero::::
 
Odgovor na temu

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Re: Problem sa bazom podataka13.12.2004. u 21:01 - pre 235 meseci
mislim da ipak problem nije riješen.
shvatio sam zašto:
ako mi je neki item u listboxu označen (zaplavljen) kad idem Novi zadatak->Sačuvaj,
onda mi ostane samo taj novi zadatak i taj označen.
možete li mi reći kako riješiti taj problem?
možda da se makne fokus sa bilo kojeg itema u listboxu kad se klikne na Novi zadatak i da se više ne može birati ništa u listboxu dok se ne klikne Sacuvaj.
kako da to napravim.

hVaLa
::::gvero::::
 
Odgovor na temu

Marko_L
Beograd

Član broj: 20532
Poruke: 2885
*.yubc.net.

Jabber: Marko_L@elitesecurity.org


+828 Profil

icon Re: Problem sa bazom podataka13.12.2004. u 21:27 - pre 235 meseci
Citat:
kad bih u kodu trebao dbadd postaviti na false?

Pa, kad završiš sa dodavanjem novog unosa, dakle negde na kraju add funkcije bi bilo najbolje.
A što se tiče ovog drugog, nisam siguran na šta misliš, ali bi mogao da podesiš listbox enabled na false, ali mislim da nije do toga problem.Takođe bi valjalo da posle bilo kakve promene u bazi uradiš i refresh iste.
-Odracuonogakomijedrpiorazmaknicu.
-Ne rxdi mi txstxturx, kxd god hocu dx
ukucxm "x" onx ukucx "x".
-Ko kaaz e da ja neuummem da kuuca
m.
-Piše "Insert disk 3", a jedva sam i ova
dva ugurao u drajv
-Postoje samo dve osobe kojima
verujem, jedna sam ja, a druga nisi ti
 
Odgovor na temu

GoranVucicevic
Novi Sad

Član broj: 28045
Poruke: 66
*.dialup.neobee.net.

Sajt: www.clickersoftware.com


Profil

icon Re: Problem sa bazom podataka15.12.2004. u 00:22 - pre 235 meseci
Valjda cu ti pomoci.

Listu deselektujes tako sto ListIndex stavis na -1 (isto tako ispitujes da li je nesto selektovano).
lstdata.ListIndex = -1
Vidi: GoranVuc #4934
 
Odgovor na temu

gvero
Blable Blablic
Hrvatska, Bibinje

Član broj: 40946
Poruke: 65
*.cmu.carnet.hr.



Profil

icon Re: Problem sa bazom podataka15.12.2004. u 14:27 - pre 235 meseci
da, mislim da bi
Code:

lstdata.ListIndex=-1
lstdata.Enabled=False

rješilo problem.

Hvala!
::::gvero::::
 
Odgovor na temu

[es] :: Visual Basic 6 :: Problem sa bazom podataka

[ Pregleda: 4619 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

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