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

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

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

[ Pregleda: 879 | Odgovora: 7 ]

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

pavlakus
Sabac

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



Profil

icon zasto ovaj kod nece da radi??????????????????06.01.2007. u 00:39

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
06.01.2007. u 00:39 

Getsbi
Miroljub Zahorjanski
Vršac

Moderator
Član broj: 124608
Poruke: 1153
*.hemo.net.



Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 14:54
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.


I'll know what I want, when I see it.
06.01.2007. u 14:54 

pavlakus
Sabac

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



Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 15:28
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
06.01.2007. u 15:28 

izonic
ishab zonic
Tuzla

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

Sajt: www.icentar.com


Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 15:41
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
06.01.2007. u 15:41 

pavlakus
Sabac

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



Profil

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

Brz_na_tastaturi
Nenad Netković
Svilajnac

Član broj: 63852
Poruke: 294
217.26.79.*



Profil

icon Re: zasto ovaj kod nece da radi??????????????????06.01.2007. u 22:05
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 ...
06.01.2007. u 22:05 

pavlakus
Sabac

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



Profil

icon Re: zasto ovaj kod nece da radi??????????????????07.01.2007. u 22:27
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
07.01.2007. u 22:27 

dakuri
Novi Sad

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



Profil

icon Re: zasto ovaj kod nece da radi??????????????????24.01.2007. u 11:40
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
24.01.2007. u 11:40 

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

[ Pregleda: 879 | Odgovora: 7 ]

Postavi temu Odgovori

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