[ cdjole @ 23.10.2008. 00:14 ] @
Radim aplikaciju za rad sa nekom bazom (access baza je u pitanju), zavrsio sam posao oko unosa podataka u tabele i sada sam poceo da pravim pregled tih podataka, zavisno od zadatih uslova. Konkretno, imam dve tabele, tblRadnici i tblDecaRadnika (da se lako zakljuciti sta se nalazi u tabelama :)). Polje koje ih veze je RadnikID. Ono sto sam zamislio je da u gornjem dbgridu ispisujem podatke o radnicima, a da se klikom na odredjenog radnika u donjem grid-u prikazuju podaci o njegovoj deci. E sad, ja sam ceprkao po netu, naso sam ovaj sajt http://support.microsoft.com/kb/189657, a nasao sam i primer u BCB 6-ici koji bas ovo radi. Medjutim, ja kada to odradim na svom primeru (da napomenem da radim u Borlandu 2007), nece da radi. Postavim 2 ADODataSet-a i vezem sa DataSource-ovima. Gornji DataSet povezem sa ADOConnection-om, unesem u CommandText properti SHAPE komandu i to kao: SHAPE {select * from tblRadnici} APPEND ({select * from tblDecaRadnika} AS Deca RELATE RadnikID TO RadnikID) I sad bi trebalo da u drugom DataSet-u imam ponudjeno da izaberem DataSetField u propertijima, ali kod mene je to prazno. U primeru iz BCB 6 je ovako: SHAPE {select * from customer} APPEND ({select * from orders} AS Orders RELATE CustNo TO CustNo) i u drugom dataset-u ima kod DataSetField da se izabere CustomersOrders. Ja kad pokusam da aktiviram gornji dataset, kaze "Invalid SQL statement; expected DELETE, INSERT, PROCEDURE, SELECT or UPDATE. Zbog ovoga i ne mogu da dodam polja u FieldsEditoru od dataset-u. Ovo mi je prvi put da radim sa SHAPE i verovatno sam nesto prevideo. Mozda ima veze sto ja za ADOConnection koristim Microsoft.Jet.OLEDB.4.0 provajdera, a u primeru je MSDataShape. Pokusao sam da promenim to kod sebe, da pokusam sa ovim drugim, ali mi izbacuje gresku da ne moze da inicijalizuje provajdera. Ako neko zna u cemu je problem ili ako ima ideju kako da se ovo drukcije odradi, bio bih mu jako zahvalan na pomoci. |