Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-11-2005
Nelly Nelly is offline
Miembro
 
Registrado: oct 2005
Posts: 148
Poder: 19
Nelly Va por buen camino
Question Problemas con codigo en delphi

Hola necesito que me ayuden a componer este codigo que esta hecho en delphi 7 y utilizando firebird como base de datos la cuestión es la siguiente:
Este codigo es para realizar una busqueda dentro una tabla llamada eventos de la base de datos, la tabla contiene información de meses atras y tambien información vigente, lo que quiero hacer es basandome en 3 componentes de delphi tales componentes son los TDBLookupComboBox. Tengo 3 componentes de este tipo los cuales utilizo para la fecha,el tipo de evento y para el municipio, lo que quiero exactamente es que cuando seleccione un tipo de evento, un municipio X y una fecha(Pero en la fecha hay una condición, quiero que muestre solo la fecha que eligire en el combo, no quiero que me arroje 10 o más fechas, solo la fecha del combo seleccionada.), al termino de la elección, cuando presione el boton Buscar que me arroje los datos seleccionados.
Quizá este ejercicio sea muy sencillo para algunos, pero en mi caso no opino lo mismo y si me ayudarian mucho si alguien respondiera a mi petición.
Muchas gracias.....

P.D. Si de plano estoy super mal en la logica de este ejercicio, se aceptan criticas constructivas

procedure Tfrmrep.btnbuscarClick(Sender: TObject);
var
evento:integer;
begin
evento:=cmbevento.keyvalue;
if evento in [1,2]>'' then begin
qryrep.Active:=false;
qryrep.SQL.Clear;
qryrep.SQL.Add('select * from eventos');
qryrep.SQL.Add('where cve_evento=:cve_evento');
qryrep.ParamByName('cve_evento').AsInteger;
qryrep.Active:=true;
end else begin
if (cmbevento.KeyValue>'') or (cmbfechevento.DateTime>'') or (cmbmunicipio.KeyValue>-1) then begin
qryrep.SQL.Clear;
qryrep.SQL.Add('select * from eventos where cve_mpo=:cve_mpo ');
qryrep.SQL.Add('where cve_evento starting with: clave and ');
qryrep.SQL.Add('fecha_evento starting with: fecha and ');
qryrep.ParamByName('clave').AsInteger:=cmbevento.KeyValue;
qryrep.ParamByName('fecha').AsDateTime;
qryrep.ParamByName('cve_mpo').AsInteger:=cmbmunicipio.KeyValue;
qryrep.Active:=true;
end else begin
ShowMessage('');
end;
end;
end;
Responder Con Cita
  #2  
Antiguo 07-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Saludos
Cita:
Empezado por Nelly
una fecha(Pero en la fecha hay una condición, quiero que muestre solo la fecha que eligire en el combo, no quiero que me arroje 10 o más fechas, solo la fecha del combo seleccionada.),..
No estoy seguro, si acabo de entender
Código Delphi [-]
procedure Tfrmrep.btnbuscarClick(Sender: TObject);
var
 evento:integer;
begin
 evento:=cmbevento.keyvalue;
 if evento in [1,2]>'' then begin//QUE ESTAS EVALUANDO AQUI, ESTA MAL ESTA CONDICION
  qryrep.Active:=false;
  qryrep.SQL.Clear;
  qryrep.SQL.Add('select * from eventos');
  qryrep.SQL.Add('where cve_evento=:cve_evento');
  qryrep.ParamByName('cve_evento').AsInteger;//No estas asignando nada  al parametro
  qryrep.Active:=true;
 end else begin
 if (cmbevento.KeyValue>'') or (cmbfechevento.DateTime>'') or  (cmbmunicipio.KeyValue>-1) then begin
  qryrep.SQL.Clear;
  qryrep.SQL.Add('select * from eventos where cve_mpo=:cve_mpo ');
  qryrep.SQL.Add('where cve_evento starting with: clave and ');
  qryrep.SQL.Add('fecha_evento starting with: fecha and ');
{Veo de where en la misma sentencia}
  qryrep.ParamByName('clave').AsInteger:=cmbevento.KeyValue;
  qryrep.ParamByName('fecha').AsDateTime;//No asignas nada
  qryrep.ParamByName('cve_mpo').AsInteger:=cmbmunicipio.KeyValue;
  qryrep.Active:=true;
 end else begin
  ShowMessage('');
 end;
end;
end;
No aporto mas hasta aclara esos puntos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!

Última edición por vtdeleon fecha: 07-11-2005 a las 22:12:26. Razón: indent
Responder Con Cita
  #3  
Antiguo 07-11-2005
Avatar de vtdeleon
vtdeleon vtdeleon is offline
Miembro
 
Registrado: abr 2004
Ubicación: RD & USA
Posts: 3.236
Poder: 24
vtdeleon Va por buen camino
Oops, Ademas de decirte qeu uses las Etiquetas vB:=Delphi-SQL

Ves la diferencia entre post??

Saludos
__________________
Van Troi De León
(Not) Guía, Code vB:=Delphi-SQL, ¿Cómo?
Viajar en el tiempo no es teóricamente posible, pues si lo fuera, ya estarían aqui contándonos al respecto!
Responder Con Cita
  #4  
Antiguo 07-11-2005
Avatar de lpmlpm
lpmlpm lpmlpm is offline
Miembro
 
Registrado: ago 2005
Posts: 136
Poder: 19
lpmlpm Va por buen camino
Ni que decir de un poquito de identación tampoco vendría mal...
__________________
"Lo mejor de no saber hacer nada es que se tiene mucho tiempo libre."
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


La franja horaria es GMT +2. Ahora son las 21:47:04.


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