Hola Marcos:
He dicho lo que me decías y sigue sin funcionar. Primero he puesto:
Código:
Procedure ActualizarTablaVisitas;
var
aux : integer;
nueva : TDataSource;
Begin
// Ir al último Lugar de la tabla
with modulodedatos do
Begin
Tablavisitas.edit;
nueva := tablavisitas.MasterSource;
Tablavisitas.MasterSource := nil;
Tablavisitas.last;
aux := TablavisitasIndice_visitas.value;
TablaVisitas.Append;
aux := aux+1;
TablaVisitasIndice_visitas.value := aux;
TablaVisitasClave_Cliente.value := TablaClientesCodigo_Cliente.value;
TablaVisitasfechavisita.value := date;
Tablavisitasempleado.value := Tablaempleadosclaveempleado.value;
Tablavisitas.post;
Tablavisitas.FlushBuffers;
Tablavisitas.mastersource := nueva;
End;
End;
Y nada, me seguía dando el mismo problema
Luego puse Tablavisitas.Flushbuffers en el evento afterpost y me sigue dando lo mismo.
Considera que el último registro es el anterior al insertado y entonces me repite el TablavisitasIndicevisitas.value y me da Key violation.
En el dbgrid me sigue saliendo
Registro 1
Registro 5
Registro 2
Registro 3
Registro 4
E intenta meter un registro con el índice = 5