Ver Mensaje Individual
  #22  
Antiguo 26-04-2004
silviodp silviodp is offline
Miembro
 
Registrado: may 2003
Ubicación: General Levalle, Argentina
Posts: 277
Reputación: 22
silviodp Va por buen camino
Pregunta sobre Query

El código que uso es tal cual así:
Código:
procedure TForm18.ListarClick(Sender: TObject);
Var
 fmSQL:String;
begin
 If Lista.Text='Código' Then
  begin
   ModeloDatos.Consulta1.Close;
   fmSQL:=Modelodatos.Consulta1.SQL.Text;
   Modelodatos.Consulta1.SQL.Text:=Format(fmSQL,['CodMueble','CodMueble']);
   ModeloDatos.Consulta1.ParamByName('DESDE').AsInteger:=StrToInt(Desde.Text);
   ModeloDatos.Consulta1.ParamByName('HASTA').AsInteger:=StrToInt(Hasta.Text);
   ModeloDatos.Consulta1.Open;
  end
 Else
   If Lista.Text='Descripción' Then
   begin
     ModeloDatos.Consulta1.Close;
     fmSQL:=Modelodatos.Consulta1.SQL.Text;
     Modelodatos.Consulta1.SQL.Text:=Format(fmSQL,['Descripcion','Descripcion']);
     ModeloDatos.Consulta1.ParamByName('DESDE').AsString:=Desde1.Text;
     ModeloDatos.Consulta1.ParamByName('HASTA').AsString:=Hasta1.Text;
     ModeloDatos.Consulta1.Open;
   end
 Else
   If Lista.Text='Rubro' Then  
   begin
     ModeloDatos.Consulta1.Close;
     fmSQL:=Modelodatos.Consulta1.SQL.Text;
     Modelodatos.Consulta1.SQL.Text:=Format(fmSQL,['Nombre','Nombre']);
     ModeloDatos.Consulta1.ParamByName('DESDE').AsString:=Desde1.Text;
     ModeloDatos.Consulta1.ParamByName('HASTA').AsString:=Hasta1.Text;
     ModeloDatos.Consulta1.Open;
   end;
y el de la Consulta SQL es:
Código:
SELECT Mueble.Codmueble,Mueble.Descripcion,Rubro.Nombre,Seccion.Nombre
FROM Mueble INNER JOIN Rubro ON Mueble.Rubro=Rubro.CodRub
                        INNER JOIN Seccion ON Mueble.Seccion=Seccion.Codigo
WHERE %s BETWEEN :DESDE AND :HASTA
ORDER BY %s;
En la parte de 'Rubro', del código es donde no funciona bien, no probé con tu respuesta anterior ya que no entiendo bien lo del 'punto de ruptura'.
Gracias.

Silvio.-
Responder Con Cita