Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-01-2004
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Poder: 21
andresenlared Va por buen camino
Question Mensaje de error en ejecución

Hola a todos, doy gracias por todo la asesoria que me han brindado, tengo una base de datos en paradox y manejo un alias, tengo un form en donde actualizo dos tablas utilizo un DBNavigator y tengo el codigo de actualizar en el beforepost

procedure TfComprobante.tcomprobanteBeforePost(DataSet: TDataSet);
begin
if tcomprobante.state in [dsInsert] then
begin
tCConfig.edit; {cuando entra a esta linea aparece el error}
tCConfig.FieldByName('Nro_comprobante').value:=tCConfig.FieldByName('Nro_comprobante').value+1;
tCConfig.post;
tCConfig.close;
end;

end;

el error dice "Record already locked by this session"

es una aplicacion monousuario.

saludos a todos
Responder Con Cita
  #2  
Antiguo 08-01-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Código:
procedure TfComprobante.tcomprobanteBeforePost(DataSet: TDataSet);
begin
if tcomprobante.state in [dsInsert] then
begin
tCConfig.edit; {Si estás en edición esta línea sobra anulala.}
tCConfig.FieldByName('Nro_comprobante').value:=tCConfig.FieldByName('Nro_comprobante').value+1;
tCConfig.post;
tCConfig.close;
end;

end;
Un Saludo
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 08-01-2004
andresenlared andresenlared is offline
Miembro
 
Registrado: oct 2003
Posts: 153
Poder: 21
andresenlared Va por buen camino
Tambien pense lo mismo y revise el codigo, ahi es en la unica parte que edito la tabla, no se si en vez de utilizar un TTable, utilice un query update si tienes otra solucion agradeceria tu opinion. Con el DBnavigator guardo todos los datos de una de las tablas y con el codigo que coloque anteriormente modifico uno de los campos eso es todo.


Un saludo
Responder Con Cita
  #4  
Antiguo 08-01-2004
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Si lo haces todo desde una rejilla, no tienes que hacer nada puesto que ella misma se encarga de ponerse en modo edición cuando entras en un campo o de insertar cuando agregas una línea, haciendo el post cuando cambias de registro.

Por lo tanto yo únicamente añadiría en el evento AfterPost del Ttable correspondiente.

MiTabla.FlushBuffers;

Para obligar a descargar la memoria intermedia.

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 02:03:24.


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
Copyright 1996-2007 Club Delphi