Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 22-02-2007
ElGatitoTapatio ElGatitoTapatio is offline
Miembro
 
Registrado: nov 2006
Posts: 38
Poder: 0
ElGatitoTapatio Va por buen camino
Error Usando clausula HAVING en Windows sin Delphi

Saludos a todos!!! ojala me puedan auxiliar porque ya le busque por todos lados y no le hayo!!
Ahi va, haber si me explico, estoy haciendo una aplicacion en Delphi con la cual hago una consulta de la siguiente forma:
Código:
   with IBQuery_ComiCedis do
    Begin
      Close;
      with SQL do
        begin
          Clear;
          Add('SELECT E.ID,C.IDCEDIS,E.NOMBRE AS NOMBRECEDIS,SUM(C.COMISIONES) '+
              'FROM COMISIONESENI C,CEDIS E '+
              'GROUP BY C.IDCEDIS,E.NOMBRE '+
              'HAVING (E.ID = C.IDCEDIS)');
          Open;
        end;
    end;
Compilo y pruebo el sistema, y pues todo lindo funciona muy bien ningun error. Pero ohh sorpresa llevo mi programa al equipo donde va a funcionar, es decir con el cliente, es decir nuevamente no tiene delphi, lo ejecuto y zaz al llegar a esa parte de codigo me marca el siguiente error:


Dynamic SQL Error
SQL error code = -104
Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause)


La verdad es que no se por donde buscarle y se me hace muy raro que funcione con los equipos donde programo y en los que no tienen delphi no funciona, cabe señalar que si tiene firebird instalado, digo por si me querian responder eso jejeje. A lo unico que he podido medio deducir es que es un problema con la clausula HAVING y que hice pruebas quitando ese filtro y si funciona, lamentablemente si necesito hacer ese filtro.

Otra cosa es que, intente ejecutar el sistema desde equipo con delphi direccionando la base de datos a una maquina sin delphi, y pues tambien me marca error al llegar a esa parte sin embargo es un error diferente y es el siguiente.


Dynamic SQL Error
SQL error code = -104
user name required.


Por favor ayuda!!!! que me estoy traumando
Responder Con Cita
  #2  
Antiguo 22-02-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Una pregunta, ¿Porque no quitas ese Having y colocas un Where?, de manera que quede asi...

Código SQL [-]
select e.id,c.idcedis,e.nombre as nombrecedis,sum(c.comisiones)
from comisioneseni c,cedis e
where (e.id = c.idcedis)
group by c.idcedis,e.nombre

Esto terminaria haciendo lo que necesitas...
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 22-02-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Se me paso cierto errorsito de sintaxis, pues que te falta incluir el campo "e.id" en el group by... y todo quedaria asi:

Código SQL [-]
 
select e.id, c.idcedis, e.nombre as nombrecedis,sum(c.comisiones)
from comisioneseni c,cedis e
where (e.id = c.idcedis)
group by e.id, c.idcedis, e.nombre
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #4  
Antiguo 22-02-2007
ElGatitoTapatio ElGatitoTapatio is offline
Miembro
 
Registrado: nov 2006
Posts: 38
Poder: 0
ElGatitoTapatio Va por buen camino
Estoy haciendo pruebas

Fijate que eso no se me habia ocurrido, a veces me paso de principiante, en este momento estoy haciendo pruebas, en un rato mas aviso resultados... gracias
Responder Con Cita
  #5  
Antiguo 22-02-2007
ElGatitoTapatio ElGatitoTapatio is offline
Miembro
 
Registrado: nov 2006
Posts: 38
Poder: 0
ElGatitoTapatio Va por buen camino
Problema resuelto..

Jonhy muchisimas gracias, si se solucionó el problema con la solucion que me diste, la verdad es que estaba cegado jejeje

Fijate que no necesite agregar el campo al group by, solo cambie la sentencia HAVING por WHERE y la puse en su lugar correcto por supuesto y al parecer pos ya quedo.

Ahora solo me queda la incognita del porque en equipos con delphi instalado si funcionaba y en los otros no , pero por el momento voy a decir que es cosa del diablo!!

Muchas gracias sobre todo por la rapidez de tu respuesta y ahi seguimos en contacto..
Responder Con Cita
  #6  
Antiguo 22-02-2007
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Bueno, pues me alegra que todo vaya bien... y claro que seguiremos en contacto y no solo conmigo si no con todos los integrantes de esta gran comunidad.
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
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
Enviar documento usando el fax de Windows epuigdef Varios 5 17-10-2008 08:55:27
Como se trabaja la Clausula Like en delphi Shidalis OOP 4 26-08-2005 16:18:51
Windows Me - error instalando delphi 6 Jorge Taveras Varios 2 29-04-2004 21:17:08
Error delphi / windows NT Balda Varios 5 24-07-2003 16:23:55
Usando la cláusula LIKE mlara Firebird e Interbase 1 10-06-2003 06:12:01


La franja horaria es GMT +2. Ahora son las 09:10:17.


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