Club Delphi  
    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
  #1  
Antiguo 26-09-2008
Avatar de Softweb
Softweb Softweb is offline
Miembro
 
Registrado: ago 2008
Posts: 46
Poder: 0
Softweb Va por buen camino
ERROR incomprensible de SQL en Delphi 2006

Hola a todos:
Soy programador desde hace 18 años y con el Delphi desde la versión 1.

Y al pasar al Delphi 2006 me sale un error en una función que tengo desde hace años funcionando perfectamente.

La función la utilizo para obtener un indice incrementa cada vez que añado un registro por ejemplo:

Código:
TableGestionIDOrig.AsInteger := DM.GenerarId('IDOrig','GESTION', 'Anyo = '+IntToStr(SwGetAnyo)+' AND HostalId = '+IntToStr(V_TIENDA));
Y la funcion es esta:

Código:
function TDM.GenerarId(KeyField, TableName, Condicion: string): Integer;
var
  NewValue: Integer;
begin
  NewValue := -1;
  Query1.Close;
  Query1.SQL.Clear;
  if Condicion <> '' then
    Query1.SQL.Add('SELECT Max( '+KeyField+' ) AS MAXIMO FROM '+TableName+ ' WHERE '+Condicion)
  else
    Query1.SQL.Add('SELECT Max('+KeyField+') AS MAXIMO FROM '+TableName);
  Query1.Open;
  // Si no hay registros en la tabla la consulta devuelve null
  if VarIsNull( Query1.FieldValues[ 'MAXIMO' ] ) then
    NewValue := 1 // valor para el primer registro de la tabla
  else
    NewValue := Integer( Query1.FieldValues[ 'MAXIMO' ] ) + 1;
  Query1.Close;
  Result := NewValue;
end;
Bueno pues lo sorprendente es que despues de tantos años funcionando la funcion ahora me dice el Delphi que :

Cita:
ERROR Invalid use of Keyword.
Token:=
Line Number:.1
el caso es que la sentencia que genera que es esta:
Código SQL [-]SELECT Max( IDOrig ) AS MAXIMO FROM Gestion WHERE Anyo=2008 AND HostalID=1

Funciona perfectamente si la meto en programas de SQL que se que estan echos con Delphi.

Y la gracia me tiene mirando y remirando la centencia desde hace mas de un mes.

Por favor si alguien tiene alguna idea de por donde mirar se lo agradeceria.

Muchas gracias
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 23:42:56.


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