Borré todas los componentes y empecé de nuevo la relación entre ellos (IBQuery->DatasetProvider-> ClientDatset) y volvi a poner todos los campos persistentes en los clientDatsets con sus propiedades pflags como antes y el DatasetProvider-->pWhereKeyOnly.. A la hora de aplicar cambios no se que pasa que siempre dice "Unable to find record. No key specified" y lo he montado exactamente igual que al principio. En el clientdataset he puesto en los campos persistentes que son clave el providewrflag pfInKey=true... y ya no se que mas hacer...