![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
|||
|
|||
|
Pregunta sobre Query
Cadetill:
el código que me pasate anda perfecto para Mueble.CodMueble y Para Mueble.descripcion es decir: Código:
procedure TForm18.ListarClick(Sender: TObject); El código de la Consulta te recuerdo que es: Código:
SELECT Mueble.Codmueble,Mueble.Descripcion,Rubro.Nombre,Seccion.Nombre Gracias, saludos. Silvio.- |
|
#2
|
|||
|
|||
|
Pregunta sobre Query
cadetill:
el código que quise poner antes es: 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 es: 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 ESDE AND :HASTAORDER BY %s; Disculpame que lo transcriba así, pero la no sé como se usa la etiqueta Code. Gracias.- |
|
#3
|
||||
|
||||
|
Cita:
Hasta luego. ![]()
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
|
#4
|
|||
|
|||
|
a ver, no se si te he entendido bien
Dices que para las opciones de CodMueble y Descripcion funciona bien, pero en cambio, para la otra opción, Nombre, no te funciona Para ver por donde anda el problema (ya que es de suponer que los muebles han de tener "nombre"), prueba poner un punto de ruptura en la linea donde asignas lo parámetros y ver que parámetros estás pasando y que sentencia SQL estás lanzando. Prueba también a lanzar esa sentencia SQL desde fuera de Delphi a ver si te retorna resultados |
|
#5
|
|||
|
|||
|
Pregunta sobre Query
En realidad el tema es así:
para Mueble.CodMueble y Mueble.Descripcion funciona bien es decir me lista ordenado por esos campos y según la seleccion que yo haya hecho, pero para Rubro.Nombre y Seccion.Nombre, cuando quiero ordenar por uno de esos campos, me devuelve el reporte en blanco es decir sin ningún registro, pero no me da ningún error. Solamente que no hace lo que debiera. Los campos que yo selecciono en mi consulta son esos cuatro. Gracias, saludos. Silvio.- |
|
#6
|
|||
|
|||
|
Cita:
|
|
#7
|
|||
|
|||
|
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;
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;
Gracias. Silvio.- |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|