Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #3  
Antiguo 01-10-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Hola

Me he tomado el atrevimiento de modificar tu función de la forma como yo la escribiría.

Código Delphi [-]
function TDM.GenerarId(Campo, NombreTabla, Condicion: string): Integer;
begin
  with Query1 do begin
     Close;
     SQL.Clear;
     if Condicion <> '' then
        SQL.Add('SELECT Max('+Campo+') AS MAXIMO FROM '+NombreTabla+
                ' WHERE '+Condicion)
     else SQL.Add('SELECT Max('+Campo+') AS MAXIMO FROM '+NombreTabla);
     Open;
     if RecordCount = 0 then
        Result := 1
     else Result := Fields[0].Value + 1;
     Close;
  end;
end;

Yo te recomiendo que hagas un trace dentro de esa función, tal vez hay algo no está bien en las variables que estas pasando.

Salud OS

Edito: He cambiado dos nombres que podrian tener efectos secundarios. TableName y KeyField.
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney

Última edición por egostar fecha: 01-10-2008 a las 23:42:00.
Responder Con Cita
 



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
Error al instalar Zeoslib en Delphi 2006 tazwil1 Conexión con bases de datos 1 15-08-2008 00:42:47
Error en ASP en Delphi 2006 aiech .NET 3 26-06-2008 22:59:18
Error: Delphi 2006 + Debugger + Threads xEsk Varios 0 16-02-2007 16:03:19
Error Incomprensible altp Varios 5 23-11-2006 18:23:49
error incomprensible HugoH Conexión con bases de datos 2 04-05-2004 12:41:19


La franja horaria es GMT +2. Ahora son las 17:02:21.


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