[ MilošV @ 09.12.2003. 12:05 ] @
Pozdrav :) Ispade roman od poruke ali molim vas procitajte do kraja Mislim da cu primjerom najbolje objasniti problem: Dakle, neka tabela u .gdb bazi ima kolone ID, IME, PREZIME IME i PREZIME unosi korisnik aplikacije (radjene u builder-u) a ID je AutoIncrement o kojem brine AfterInsert-triger u samoj bazi Na formi su TIB komponente koje se vezu na bazu bez koriscenja BDE-a: IBTable1, IBDatabase1, IBTransaction1 i DataSource1 i DBGrid1. Nakon podizanja aplikacije sve izgleda u redu, IBTable1 povuce sve podatke iz baze, ali ako korisnik unese "Ime" i "Prezime" a polje "ID" (kojem je u Fields Editoru postavljeno Required=false) ostavi prazno, nakon: Code: IBTable1->Post(); IBTable jednostavno ne vidi vrijednost novog ID-a, tj vidi se uneseno ime i prezime ali ID kao da je NULL Probao sam sa Code: IBTable1->Post(); IBTransaction1->CommitRetaining(); IBTable1->Refresh(); ali problem je ostao!? Kad bazi pristupim iz npr. IBExpert-a, vidi se da su svi podaci tu ali ih bilder-aplikacija ne vidi sve dok se ne restartuje... Jedini nacin koji sam nasao da natjeram IBTable1 da vidi novu vrijednost ID-a bez restartovanja aplikacije je prilicno ljakse: Code: IBTable1->Post(); IBTable1->Active=false; IBTable1->Active=true; CachedUpdates su podeseni na false Pretpostavljam da tu ima caka koju ja (ocito) ne znam... Ovo mi je oduzelo vec dosta vremena, please help! Hvala na strpljenju Tica |