[ iggac @ 24.12.2004. 18:20 ] @
Imam mrezu od dva racunara i problem mi je u tome sto kod unosenja podataka u bazu iz jednog racunara(klijenta) ne mogu mi se podaci pojaviti na serverskoj aplikaciji automatski, tj dok je ukljucena i serverska i klijentska aplikacija. Probao sam na serverskoj aplikaciji sa IBTable.Refresh ali nista se ne desava.Medjutim kada zatvorim aplikaciju(na serveru) i ponovo se konektujem tj. diskonektujem se i ponovo se konektujem na bazu(sa servera) podaci koje sam unio preko klijenta u bazu na serveru mi se pojave.Ima li drugi nacin osim diskonektovanja i ponovnog konektovanja na bazu(sa IBDatabase)? Ne razumem se bas detaljno u rad sa bazom preko mreze.
[ Milos D @ 26.12.2004. 11:27 ] @
Pre refresh probaj da uradis database.defaulttransaction.RollbackRetaining
[ Riste Pejov @ 26.12.2004. 18:58 ] @
Prvo: IBTable je rudimentirana klasa (komponenta) koja sluzi da samo olaksa portovanje sa Paradox/BDE-a. Kad se govori o IB/FB onda zaboravi na IBTable nego se nauci koristiti IBQuery.

Drugo: kad jedna transakcija unese podatke u bazu, i komituje ih, druga ih moze u istom momentu moze videti. Proveri jeli ti druga transakcija uradila commit za da mozes videti podatke. Znaci kad radis sa IB/FB potrudi se da svaki update/insert bude unutar transakcije. Ako zelis tvrdu kontrolu iznad transakcije onda mozes za svaki TIBQuery objekt koristiti posebnu transakciju (to je moja preporuka).

Trece: ako zelis da applikacija na drugom kompjuteru vidi podatke samo Close()/Open() Dataset. Ako zelis da klient broj 1 bude obavesten kada klient broj 2 insertuje/updateuje podatke u tabeli onda pogleda IB Developer Guide kako se radi sa EVENT-ima.