Ver Mensaje Individual
  #8  
Antiguo 28-03-2007
fidel fidel is offline
Miembro
 
Registrado: mar 2005
Posts: 381
Reputación: 22
fidel Va por buen camino
Hola:

Lo que me indicas es lo mismo que tengo pero puesto en vez de con add en varias líneas con Text en una sola línea, por lo que da el mismo error, en el As, solo que ahora está en la linea 1 Char 60 .

Lo he cambiado así
Código SQL [-]
  DM.IBDSAlumnos.SelectSQL.Add('Select ALUMNOS.CODIALUMNO, Count(*)');
  DM.IBDSAlumnos.SelectSQL.Add(' From ALUMNOS');
  DM.IBDSAlumnos.SelectSQL.Add(' Left Join FALTAS');
  DM.IBDSAlumnos.SelectSQL.Add(' On ALUMNOS.CODIALUMNO = FALTAS.CALUMNO');
  DM.IBDSAlumnos.SelectSQL.Add(' Group By ALUMNOS.CODIALUMNO');
  DM.IBDSAlumnos.SelectSQL.Add(' Having Count(*) between ESDE and :HASTA');

  DM.IBDSAlumnos.ParamByName('DESDE').AsInteger := StrToInt('0' + EDesde.Text);
  DM.IBDSAlumnos.ParamByName('HASTA').AsInteger := StrToInt('0' + EHasta.Text);

  DM.IBDSAlumnos.Open;

y ahora pasa sin error pero al abrir la tabla alumnos me da
IBDSAlumnos: campo 'NOMBRE' no encontrado.

Si en el select le añado el campo NOMBRE (Select ALUMNOS.CODIALUMNO, ALUMNOS.NOMBRE, Count(*)) me da otro error en Group By:

Invalid expression in the select list (not contained in either an agregate function or the GROUP BY clause)

Un saludo.

Última edición por fidel fecha: 28-03-2007 a las 19:50:07.
Responder Con Cita