[ Aleksandar Vasic @ 29.11.2007. 08:48 ] @
| Ovako imam objekat adodc preko kojeg je povezana dbf baza (dbase III) ali potrebno mi je mi ne bude unapred definisan RecordSource,vec kada startujem program prva forma je "upishi broj",pa kada tu upishem broj on taj broj postavi da bude RecordSource.
Ja sam to pokusao ovako:
Code: Adodc1.RecordSource = Text1.Text
Adodc1.Refresh
Form1.Show
program odradjuje posao,medjutim pri ulasku i izlasku iz programa javlja se sledeca poruka "[Microsoft][ODBC dBase Driver]Syntax error in FROM clause"
sta uciniti?
[Ovu poruku je menjao Aleksandar Ružičić dana 29.11.2007. u 14:04 GMT+1] |
[ Marko_L @ 29.11.2007. 10:02 ] @
Aman ljudi, hoćete li ikad naučiti da postavite pitanje kako treba.Dakle, napiši gde ti se nalazi ta Adoddc kontrola i gde pokušavaš da je iskoristiš, s obzirom da posle nje pozivaš Form1. kakva ti je konstrukcija baze, šta ti se nalazi u Text1.Text... ne može niko da gleda pasulj. A kladim se u po tanjira riblje čorbe da si opet postavio tip polja koje treba da bude numeričko kao Text.
[ Aleksandar Vasic @ 29.11.2007. 11:56 ] @
brate,imaju dve forme "godina" i "Form1",forma godina je obicna forma na kojoj se nalazi jedan textbox i dva dugmeta,a na Form1 se nalazi Adodc koje vuce bazu po datoj godinu.U formi "godina" u textbox-u se upisuje godina npr: 2007,kada upishem i stisnem OK on podesi na Form1 za adodc da bude recordsource "2007" odnosno da ucita bazu pod imenom "2007",command type je adCmdTable.......ja mislim da je sad jasno....
[ Aleksandar Ružičić @ 29.11.2007. 13:06 ] @
pa nije bash najjasnije, daj sql upite koji se izvrsavaju (ili neki malo veci deo koda, onaj ne znaci bas mnogo) jer ta greska koju ti prijavljuje je vezana za sql (negde kod FROM klauzule)
[ Aleksandar Vasic @ 29.11.2007. 13:14 ] @
brate koji sql,ja to nisam nista koristio,izgleda da ja to ne znam nista :P
[ Marko_L @ 29.11.2007. 13:36 ] @
Citat: Mesto dešavanja - forum za stolare
Stolar početnik: E braćo, imam problem... ne mogu da ukucam ekser...
Iskusniji stolar: Kako ne možeš, ajde opiši kako radiš ?
Stolar početnik: Pa lepo imam dve daske, uzmem ekser, čuk čuk i neće...
Iskusniji stolar: Pa jesu li ti ekseri pravi, da nisu iskrivljeni...
Stolar početnik: Ma ekseri su odlični... daske su super zdrave... ne znam šta bi moglo biti...
Iskusniji stolar: Pa dobro, onda jedino ostaje da pitamo za čekić... kako ti izgleda čekić...
Stolar: Čekić ? Šta je to ? Ja to brate ništa nisam koristio...
[ Aleksandar Vasic @ 29.11.2007. 13:53 ] @
dobro brate nije bas tako...
[ Marko_L @ 29.11.2007. 16:49 ] @
Pa brate jeste baš tako. Neko ko uzme da radi sa bazama podataka, a prethodno se ne upozna sa osnovama tipa šta je SQL, šta su tipovi podataka... i slično, ekvivalentan je nekome ko hoće da napravi drvenu kutiju, a ne zna šta je daska, a šta čekić. Pročitavši tvojih nekoliko poslednjih postova, ja samo mogu da ti preporučim da obiđeš lepo TOP teme, skineš one tutorijale korak po korak, a onda pretražiš malo forum, jer je verovatno 50% tema na neki način vezano za baze podataka, pa onda kad naiđeš na pravi problem, lepo dođeš i postaviš novu temu i objasniš gde je zapelo. Kako misliš da ti neko odgovori na pitanje kad ti jednostavno nemaš dovoljno znanja ni da obrazložiš problem koji imaš, jer ne znaš ni šta si koristio. Počni od osnova kao i svi normalni ljudi.
[ Aleksandar Vasic @ 29.11.2007. 17:03 ] @
brate,sve je to lepo ali ja nisam bas totalni pocetnik imam 8 ogromnih programa napisanih za baze podataka i svi rade odlicno i ljudi su prezadovoljni....problem je to što sam do sada imao programe sa samo jednom bazom koja je fiksna,a sada imam problem sto imam vise baza,odnosno za svaku godinu ima po jedna baza,i kada startujem program korisnik treba da upiše godinu i da mu učita tu bazu koja je za tu godinu....rekoh ti ja sam to uradio,program radi super,samo mi se javlja ona poruka pri ulasku i izlasku iz programa.....
ovo je connection string:
Code: Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=dBASE Files;DBQ=E:\BAZA\MATICNA;DefaultDir=E:\BAZA\MATICNA;DriverId=533;MaxBufferSize=2048;PageTimeout=5;"
sve ja tebe razumem,ali jbg ti to ne mozes da shvatis jer ti to znas perfektno,ali verujem da si i ti kada si poceo da se bavis programiranjem postavljao pitanja ovako kao ja.....Ako nisi,svaka ti cast,imas pivo od mene ;)
[ goranvuc @ 29.11.2007. 17:37 ] @
Vidi, posto kazes Citat: pri ulasku i izlasku iz programa javlja se sledeca poruka "[Microsoft][ODBC dBase Driver]Syntax error in FROM clause" da bi mogli da ti pomognemo bitno je da kad se pojavi ta greska udjes u breakmode i vidis na kojoj liniji koda ti daje tu gresku. Uradi to, pa onda ovde postavi taj deo koda i naglasi na kojoj liniji izbacuje gresku pa da idemo dalje do resenja problema 
[ Aleksandar Vasic @ 29.11.2007. 20:02 ] @
problem je sto nema greshke hehe,kada to ispise nema ono klasicno da stisnes debug,nego program nastavlja dalje,nisam postavio "On Error Resume Next",ako ste sad to poimslili.....
[ goranvuc @ 29.11.2007. 20:05 ] @
Ma znam da nema, mislio sam da, dok ti stoji dijalog sa tom porukom o gresci stisnes cuvenih CTL+Break pa bi nakon tvog "OK" na ekranu sa porukom o gresci program stao sa izvrsenjem. Probaj to!
[ Aleksandar Vasic @ 29.11.2007. 20:23 ] @
Code: Private Sub Command1_Click()
Form1.Adodc1.RecordSource = Text1.Text
Form1.Adodc1.Refresh
Form1.Show
Unload godina
End Sub
obelezilo je Form1.Adodc1.Refresh
[ goranvuc @ 29.11.2007. 20:28 ] @
Uh, tebi bas treba crtati ;)
Dakle, kad ti je program stao sa izvrsenjem na toj liniji, pridji kursorom misa na Text1.Text u Code Editoru, zadrzi kursor par sekundi da ti ocita sta je sadrzaj Text1.Text pa mi javi (mozes i u Immediate Window da upises ? Text1.Text i pritisnes Enter, ili da pogledas u Locals Window vrednost Text1.Text, a mozes i ....)
Hajde, pa idemo dalje.
P.S. da li ti je to pocetak ili kraj izvrsenja programa?
Moras pri trazenju gresaka nauciti da koristis F5, F8, Shift+F8 i sl. Kod ovakvih problema je kljucno prvo lokalizovati problem na jednu proceduru, pa onda dalje traziti liniju po liniju, uz inspekciju svih promenljivih tokom izvrsenja.
[ Aleksandar Vasic @ 29.11.2007. 20:32 ] @
kada zadrzim kursor misha,na text1,kaze Text1.Text = "1990",to je pocetak izvrsenja programa....
[ goranvuc @ 29.11.2007. 20:34 ] @
Pa da li imas DBF za tu godinu, tj. sa tim nazivom?
[ Aleksandar Vasic @ 29.11.2007. 20:41 ] @
ima 100%,rekoh,program radi,samo sto ispisuje tu poruku....
[ goranvuc @ 29.11.2007. 20:42 ] @
Dobro, onda stavi breakpoint na liniju:
Code:
Form1.Adodc1.RecordSource = Text1.Text
i procitaj sadrzaj od Form1.Adodc1.RecordSource pre izvrsenja te linije, pa javi!
[ Aleksandar Vasic @ 29.11.2007. 20:47 ] @
sadrzaj pre izvrsenja te linije adodc1.recorsource -a je = "" znaci prazan....
[ goranvuc @ 29.11.2007. 20:53 ] @
Super, hajde sad idi na kod od te tvoje Form1 i stavi breakpoint na Form_Load dogadjaj (svojevremeno sam objasnjavao zivotni ciklus formi i kako ih treba kreirati i pozivati, svi tvoji problemi poticu verovatno bas zbog loseg upravljanja sa formama).
Ako nemas nista upisano u tom dogadjaju, ti ga izaberi i uradi to sto sam rekao, pa onda idi na View/Locals Window i pogledaj sadrzaj od AdoDC1 svojstava da li tamo ima nesto sto ne bi trebalo.
Inace, polako me vec nervira sve ovo, opet si mogao lepo da uploadujes te tvoje 2 forme da se ne jurimo ovako!
[ goranvuc @ 29.11.2007. 21:03 ] @
Evo sad sam procitao ovaj topik ponovo od pocetka do kraja da vidim da nisam nesto propustio, a jesam:
Ko ti je rekao da pristupas DBF-u preko MSDASQL provajdera? Verovatno je to i uzrok poruka ;)
Probaj
Code:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:\BAZA\MATICNA;Extended Properties=dBase III;"
umesto tog tvog
Code:
"Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="DSN=dBASE Files;DBQ=E:\BAZA\MATICNA;DefaultDir=E:\BAZA\MATICNA;DriverId=533;MaxBufferSize=2048;PageTimeout=5;"
[ Shadowed @ 29.11.2007. 21:14 ] @
Gorane, svaka cast, a cak nije mzp (mlado-zensko-prsato). 
[ Aleksandar Ružičić @ 29.11.2007. 21:17 ] @
lol 
[ Aleksandar Vasic @ 29.11.2007. 21:20 ] @
e ne radi,sad kaze da data source ne postoji i da nije definisan default driver........
[ BinLaden @ 29.11.2007. 21:21 ] @
Ako sam ja dobro skontao, tu bi dvije uglaste zagrade rijesile problem [].
Al gorane, pls nemoj da mu kazes kako skoro smo mu rijesili jedan slican problem, neka se malo pomuci
onda mozda nesto i nauci.
[ goranvuc @ 29.11.2007. 21:32 ] @
Ja te ne z... vec sam ti dao varijantu sa connectionstring-om koji meni perfektno radi stvar kad je u pitanju DBF. A sta je sad problem - ne znam.
[ Aleksandar Ružičić @ 29.11.2007. 21:34 ] @
The End uploaduj projekat ceo da ti resimo problem (i bazu, jednu nemoras sve) sto kaze Goran ovako mozemo samo da gledamo u pasulj
[ goranvuc @ 29.11.2007. 21:36 ] @
Ma nema veze, cackaj jos malo, dao sam ti neke smernice. I javi ako resis!
[ Aleksandar Vasic @ 29.11.2007. 21:37 ] @
Vazi!
[ BinLaden @ 29.11.2007. 21:41 ] @
Ja i dalje mislim da ce: "[]", ali na pravom mjestu da rijesi problem.
The_End_is_close to nije za*ebancija nego potrazi skorije poruke gdje ti je goran ispravio kod
sa zagradama i on je proradio.
[ BinLaden @ 29.11.2007. 21:47 ] @
Izvinjavam se, sad sam ja pretrazio.
Ipak nisi bio ti u pitanju nego smo pomagali @zormar.
http://www.elitesecurity.org/p1755278
[ goranvuc @ 29.11.2007. 21:52 ] @
BinLaden, skontao sam odmah na cega mislis, ali mislim da kod njega nije to uzrok problema (mada, ko zna?)
[ Aleksandar Vasic @ 29.11.2007. 21:53 ] @
ljudi ova poruka se javlja,sad sam provalio,pre nego sto pocne da cita bilo koji kod.....znaci prvo se ovo javi,pa onda krece Form_Load...
[ goranvuc @ 29.11.2007. 21:54 ] @
Pa zato sam te i uputio da koristis JET provajdera u connectionstringu, mislim da je to sto se tebi desava poznati bug kod MSDASQL provajdera.
[ Aleksandar Vasic @ 29.11.2007. 21:57 ] @
da,ali kada sam pokusao da napravim connection string preko tog provider-a,nisam uspeo,jer prihvata sam .mdb fajlove.....a connection string koji si mi dao nece da radi.....
[ goranvuc @ 29.11.2007. 22:00 ] @
Joooj, izvini - ali bas si biser ;)
U properties window od te tvoje ADODC1 kontrole nadji svojstvo ConnectionString i PEJSTUJ ConnectionString koji sam ti ovde dao, a ne da ides na izbor.
[ Aleksandar Vasic @ 29.11.2007. 22:02 ] @
brate hehe,pa nisam ja bas toliko glup ccccc..........PEJSTOVAO sam,i rekoh ne radi,pa sam posle pokusao da napravim connection string preko tog provider-a,prethodno se uverivsi da ne radi onaj koji sam PEJSTOVAO :P
[ goranvuc @ 29.11.2007. 22:10 ] @
Pa jesi probao sa DBASE IV ili DBASE V? Da li si upisao sa navodnicima ili bez?
Probaj sa:
Code:
Provider=VFPOLEDB.1;Data Source=E:\BAZA\MATICNA;Password="";Collating Sequence=MACHINE
[ goranvuc @ 29.11.2007. 22:12 ] @
Evo ti i link na FoxPro OLEDB driver instalaciju, ako je nemas na sistemu:
http://www.microsoft.com/downl...5a3289c5fd4&displaylang=en
[ chachka @ 29.11.2007. 22:25 ] @
Da li je ovo forum ili instant messaging ?-|
[ Aleksandar Vasic @ 29.11.2007. 22:26 ] @
fora je sto nisam ja pravio tu bazu,ta baza vec postoji i ona je dBase III.Probao sam i sa i bez navodnika.Skinuo sam taj provider i instalirao,kada ubacim taj connection string,kaze "Syntax Error",opet program radi,samo sto sad umesto slova ć on ispise slovo ź
[ goranvuc @ 29.11.2007. 22:28 ] @
To se i ja ponekad pitam? Izgleda da mi iz Čoke volimo da divanimo 
[ goranvuc @ 29.11.2007. 22:29 ] @
Prijatelju, a kako ti se zovu kolone u tim tabelama?
[ Aleksandar Vasic @ 29.11.2007. 22:29 ] @
ima ih oko 35......da ne nabrajam....
[ goranvuc @ 29.11.2007. 22:32 ] @
Pa u cemu je problem - tesko ti da pises, evo ja opet izgubio par sati da bih ti pomogao, a ti "ima ih 35".
Ako mislis da su im korektni nazivi - super, jer je meni ponestalo ideja i trenutno samo na to sumnjam. Ili pisi, ili ja odoh da spavam.
[ goranvuc @ 29.11.2007. 22:35 ] @
Hajde isprazni neki od tih tvojih dbf-ova pa uploaduj (posto su to osetljivi podaci).
[ goranvuc @ 29.11.2007. 22:53 ] @
Stavi samo:
Code:
Provider=MSDASQL.1;Extended Properties="DSN=dBASE Files;DBQ=E:\BAZA\MATICNA;"
i bice sve u redu (mada ne znam zasto kod tebe ne prolazi ono sa JET provajderom)
Ajd' laku noc!
[ Aleksandar Vasic @ 29.11.2007. 22:56 ] @
e radi,hvala ti puno ;)
p.s. trudicu se da ne postavljam vise pitanja do nove godine :P
[ goranvuc @ 29.11.2007. 22:59 ] @
Ma nema veze
Izgleda da si u extended properties delu connectionstringa stavio neke parametre koji nisu predvidjeni, a provajder ih je ignorisao, ali se naravno za svaki slucaj pozalio pri instanciranju i unistavanju ADODC objekta.
Pozdrav!
[ Aleksandar Vasic @ 29.11.2007. 23:00 ] @
aj pozdrav,laku noc i hvala jos jednom ;)
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|