Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Error inesperado funcionaba bien (https://www.clubdelphi.com/foros/showthread.php?t=76678)

joseapd603 17-11-2011 20:24:58

Error inesperado funcionaba bien
 
Buenas amigos, tengo este problema el sistemita que estoy haciendo funcionaba bien pero ahora de repente sate este error

No se puede encontrar la fila para su actualización: algunos valores han cambiado desde la ultima vez que se leyó.

la cuestion esta en que no he hecho ninguna modificacion para que este error salga.

para ser ma visual, tengo un formulario de buiblioteca donde hago los prestamos y desde ese formulario cuando presione guardar el agrega en la tabla de prestamo los datos bien, pero en el mismo boton guardar edito la tabla de libros para que en el campo cantidad de la tabla libros se reste 1 libro, el error da justo cuando hace el Post para hacer esa edicion. este es el codigo que tengo:

Código:

procedure TForm10.GUARDARClick(Sender: TObject);
begin

datasource1.DataSet.FieldByName('tipo').Value:=combobox1.Text;
datasource1.DataSet.FieldByName('cod_presta').Value:=edit1.Text;
datasource1.DataSet.FieldByName('ced_usu').Value:=edit2.Text;
datasource1.DataSet.FieldByName('cota_lib').Value:=edit3.Text;
datasource1.DataSet.FieldByName('fecha_presta').Value:=edit4.Text;
datasource1.DataSet.FieldByName('fecha_entrega').Value:=edit5.Text;
datasource1.dataset.Post;
datasource1.DataSet.Refresh;

datasource2.DataSet.First;
datasource2.DataSet.Locate('cota',edit3.Text,[loCaseInsensitive, loPartialKey]);
datasource2.DataSet.Edit;
datasource2.DataSet.FieldByName('cantidad').Value:=datasource2.DataSet.FieldByName('cantidad').Value-1;
datasource2.DataSet.Post;
datasource2.DataSet.Refresh;
desabilitar;
end;

agradeseria toda la ayuda y sugerencias presentadas.

oscarac 17-11-2011 20:38:53

el datasource2 a donde apunta? a una tabla? a un query?

ecfisa 17-11-2011 20:45:41

Hola.

Una consulta, ¿ Hay un sólo usuario involucrado o son varios utilizando la misma base de datos cuando se produce el error ?

Un saludo.

joseapd603 17-11-2011 20:45:54

si, perdon por obviar eso, la base de datos esta hecha en access 2003 y para la conexion utilizo un ADOconection, un ADOtable y un Datasource.

joseapd603 17-11-2011 20:46:27

si, hay solamente un usuario usando la base de datos

ecfisa 17-11-2011 20:58:12

Hola.

Entonces la cosa no vá por donde pensaba...

No manejo Access, pero revisá este enlace donde presentan un problema similar: Problema con ADO.

Un saludo.

Neftali [Germán.Estévez] 18-11-2011 11:41:09

En algunos casos está relacionado con las claves primarias de las tablas.
¿Tienes claves primarias definidas para la tabla?

fjcg02 18-11-2011 22:15:00

Neftali +1

Me uno a la causa. Seguramente no hay clave primaria en la tabla. Ese suele ser el error típico.

Saludos

joseapd603 22-11-2011 00:42:30

si, tiene clave principal, la cual es string, el sistema hace la midificacion en la tabla "Libros", pero muestra ese error, es decir, el sistema cuando ejecuta el codigo hace todo bien incluso ekl edit, pero da el error.


La franja horaria es GMT +2. Ahora son las 23:50:55.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi