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

zasto ovaj kod nece da radi??????????????????

[es] :: Access :: zasto ovaj kod nece da radi??????????????????

[ Pregleda: 2835 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

pavlakus
Beograd

Član broj: 84519
Poruke: 236
*.dynamic.sa.sbb.co.yu.



+3 Profil

icon zasto ovaj kod nece da radi??????????????????06.01.2007. u 00:39 - pre 209 meseci
gresku javlja kod dela WHERE [id]=[forms].[form1].[combo4], bez ovog dela radi, radi i kada umesto putanje do combo boxa stavim neku vrednost. Pokusavao sam i da stavim . umesto !, pokusao sam i da razdvojim kod u dva dela i da mi ovaj deo sa where ... bude u drugom redu i nista nece da radi, i stalno prijavljuje gresku too few many parametars. molim za pomoc :)
Code:

Dim sql As String, stritem As String
Dim db As DAO.Database
Dim rs As DAO.Recordset

sql = "SELECT text1,text2,text3,text4,text5 FROM Table1 WHERE [id]=[forms].[form1].[combo4]"

Set db = CurrentDb
Set rs = db.OpenRecordset(sql)

stritem = rs.Fields("text1").Value & ";" & rs.Fields("text2").Value & ";" & rs.Fields("text3").Value & ";" & rs.Fields("text4").Value & ";" & rs.Fields("text5").Value

Me.List2.AddItem stritem, Index:=1


[Shadowed: dodati [code] tagovi.]

[Ovu poruku je menjao Shadowed dana 06.01.2007. u 16:42 GMT+1]
pavlakus grosus
 
Odgovor na temu

Getsbi

Moderator
Član broj: 124608
Poruke: 2828



+45 Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 14:54 - pre 209 meseci
Ne vidi se zaglavlje Sub....EndSub procedure, inače bi bilo jasno da nisu preneti svi parametri koji se specificiraju u upitu. Sledeća greška je po meni što select query mogu da budu izvor podataka za Recodset ali ne mogu istovremeno imate uslove koji se referenciraju sa forme. To isto važi i za akcione Query-je. Postoje jasna pravila za referenciranje uopšte i mogu se pronaći u literaturi koja tretira VBA. Takođe kada referenciraš kontrolni objekat na određenom obrascu ili izveštaju, obrazac ili izveštaj mora da bude otvoren.Ovo zadnje nije prouzrokovalo grešku ali je dobro voditi računa o tome.


 
Odgovor na temu

pavlakus
Beograd

Član broj: 84519
Poruke: 236
*.dynamic.sa.sbb.co.yu.



+3 Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 15:28 - pre 209 meseci
naravno da postoji sub i end sub, i kao sto sam rekao radi kada umesto putanje do combo boxa stavim neku vrednost iz tabele. e sad ja mislim da je greska u samoj putanji ali nemam ideju kao da je napisem
pavlakus grosus
 
Odgovor na temu

izonic
ishab zonic
Tuzla

Član broj: 38128
Poruke: 591
*.PPPoE-3334.sa.bih.net.ba.

Sajt: www.icentar.ba


+2 Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 15:41 - pre 209 meseci
Dim sql As String, stritem As String
Dim db As DAO.Database
Dim rs As DAO.Recordset

sql = "SELECT text1,text2,text3,text4,text5 FROM Table1 WHERE [id]=[forms].[form1].[combo4]"

Sql Je strin koji saljemo bazi da nam vrati rezultat.
U tvom slucaju je i ovo string koji sql nezna da procita:
[id]=[forms].[form1].[combo4]"
Ispravno bi bilo ovako ukoliko pretpostavimo da je polje ID u tabeli brojcano.

Dim A as Integer
A=[forms].[form1].[combo4]

Sada uslov za ID polje Iamo U memorijskoj A te bi SQL string izgledao ovako.
sql = "SELECT text1,text2,text3,text4,text5 FROM Table1 WHERE [id]=" & A

poslije toga slijedi

Set db = CurrentDb
Set rs = db.OpenRecordset(sql)

Znaci podigli smo Rs sa datim uslovom A.
Sad ako je ID primarni kljuc to je dalje i uredu jer znaci da u ovom RS moze biti samo 1 red podataka ili 0 redova sto bi trebalo i prekontrolisati prije inace ce doci do greske pri usitavanju a to moze izgledari ovako:

if Rs.recordcount=0 then
Msgbx "Ne postoji takav podatak u bazi"
else
stritem = rs.Fields("text1").Value & ";" & rs.Fields("text2").Value & ";" & rs.Fields("text3").Value & ";" & rs.Fields("text4").Value & ";" & rs.Fields("text5").Value
endif

E sad da bi ovo upisali u list box u jednu kolonu, mada mi je ovo nelogicno da se podaci iz vise kolona skupljaju u jednu ako je jedna.
Znaci da u ColumnCount pise 1.
U rwsource Type treba odabrati value list.
i onda dolazi ovaj kod:

Me.List2.Rowsource=stritem

Opet da napomenem da ovo sve vazi ako je samo 1 red podataka i jedna kolona u rowsource.
zxz
 
Odgovor na temu

pavlakus
Beograd

Član broj: 84519
Poruke: 236
*.dynamic.sa.sbb.co.yu.



+3 Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 20:05 - pre 209 meseci
hvala na pomoci, proradilo je samo sa uvidjenjem promenljive samo treba umesto . da se stavi !
pavlakus grosus
 
Odgovor na temu

Brz_na_tastaturi
Svilajnac

Član broj: 63852
Poruke: 318
217.26.79.*



+1 Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 22:05 - pre 209 meseci
Nemoraš da koristiš promenljivu, samo deo koji je filter sa forme odvojiš kao što je odvojena promenljiva

sql = "SELECT text1,text2,text3,text4,text5 FROM Table1 WHERE [id]=" & [forms]![form1]![combo4]

Možda je tačno da je sve već rečeno, samo nisu svi sve čuli i razumeli ...
 
Odgovor na temu

pavlakus
Beograd

Član broj: 84519
Poruke: 236
*.dynamic.sa.sbb.co.yu.



+3 Profil

icon Re: zasto ovaj kod nece da radi??????????????????07.01.2007. u 22:27 - pre 209 meseci
i jos jedan problem, nece u vb kodu da mi prihvati nasa slova č,ć....., dok u ostalim programima kao sto je word normalno rade
koristim office 2000 i winxp


[Ovu poruku je menjao pavlakus dana 07.01.2007. u 23:52 GMT+1]
pavlakus grosus
 
Odgovor na temu

dakuri
Novi Sad

Član broj: 44913
Poruke: 191
*.axpan.net.



+1 Profil

icon Re: zasto ovaj kod nece da radi??????????????????24.01.2007. u 11:40 - pre 209 meseci
sql = "SELECT text1,text2,text3,text4,text5 FROM Table1 WHERE [id]=" & [forms]![form1]![combo4]

Mene interesuje kako da napisem sql kada imam filtriranje na osnovu dva polja jedne forme....

Ovo sa jednim poljem radi super

Pozdrav
 
Odgovor na temu

[es] :: Access :: zasto ovaj kod nece da radi??????????????????

[ Pregleda: 2835 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

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