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 23-02-2007
vicac vicac is offline
Registrado
 
Registrado: oct 2006
Posts: 3
Poder: 0
vicac Va por buen camino
Por que no funciona EOLEException

Hola. Soy novata en el manejo Delphi, estoy desarollando un a aplicacion (Delphi7) con una base de datos en MySql que debe ser accedida por varios clientes. Dentro de la aplicacion genero un Vale con numero de folio unico y lo manejo de la siguiente manera:

Cuando abre la forma muestra un numero de folio obtenido de "select max(folio) from vale". Obviamente si se conectan dos clientes al mismo tiempo les dara el mismo numero de folio. Es por esto que al guarda se generara una exception la cual quiero tomar e indicarle que recalcule el numero de folio.

Mi problema es que ese trozo de codigo, donde toma la excepcion, no me funciona, estoy utilizando myodbc el error es de llave duplicada de la class EOLEException.


Try
tablas.ADOQuery1.SQL.Clear;
tablas.ADOQuery1.SQL.Text:=cad;
tablas.ADOQuery1.ExecSQL;
application.MessageBox('Registro Agregado','Información',mb_ok+mb_iconinformation);

except
on E:EOLEException do begin
// Levantamos la excepción
MessageDlg('Se asignara un nuevo folio:' +E.Message, mtError, [mbOK], 0);
self.CalcularFolio;
end;

cad es la intruccion de insertar en mysql, y el error se produce en la linea de "tablas.ADOQuery1.ExecSQL;". y no tome el codigo de la exception.


¿Que estoy haciendo mal?

Gracias por su ayuda!
Responder Con Cita
  #2  
Antiguo 23-02-2007
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Por que no pruebas con la clase

Código Delphi [-]
Try
tablas.ADOQuery1.SQL.Clear;
tablas.ADOQuery1.SQL.Text:=cad;
tablas.ADOQuery1.ExecSQL;
application.MessageBox('Registro Agregado','Información',mb_ok+mb_iconinformation);

except
on E:Exception do begin
// Levantamos la excepción
MessageDlg('Se asignara un nuevo folio:' +E.Message, mtError, [mbOK], 0);
self.CalcularFolio;
end;
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #3  
Antiguo 24-02-2007
vicac vicac is offline
Registrado
 
Registrado: oct 2006
Posts: 3
Poder: 0
vicac Va por buen camino
Gracias por tu respuesta.

He intentado lo que me indicaste y tampoco me funciono. ¿Alguna otra idea?
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
EOLEexception "Error Desconocido" saul_montalvo Conexión con bases de datos 4 03-08-2007 06:44:18
EOleException La Operacion en varios pasos genero errores Lucas_diaz1810 Conexión con bases de datos 2 28-12-2006 13:11:36
IIS no funciona YaninaGenia .NET 2 26-07-2006 14:21:59
EOleException heinrich Varios 0 25-09-2004 01:39:49
like no funciona ! dmasson Conexión con bases de datos 9 23-03-2004 14:10:50


La franja horaria es GMT +2. Ahora son las 20:33:33.


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