Bueno. Si el filtrado esta OK. Puedes ver la cantidad de filas que te Devuelve dicho filtro (DataSet.RecordCount). Y verificar si se encuentra el dicha fila (DataSet.RecNo = DataSet.RecordCount), no se puede insertar . No me acuerdo bien el hilo pero lo habia leido en este foro. Lo busco y lo agrego aqui mismo.
Edit: aqui el tema que comentaba:
http://www.clubdelphi.com/foros/show...rtar+en+dbgrid