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 20-03-2014
Detenido Detenido is offline
Registrado
NULL
 
Registrado: oct 2012
Posts: 7
Poder: 0
Detenido Va por buen camino
Mostrar propiedad en un rango de precios

Estimados, junto con saludarles me veo obligado a hacerles la siguiente consulta.

Resulta que estoy trabajando en una aplicación sencillisima que permite organizar las propiedades que tengo en venta/arriendo, utilizo delphi 2010 con componentes ado y base de datos en access, tengo todo listo pero lo que me falta es mostrar las propiedades que correspondan a un rango de precios especificado en un componente combobox, la idea es que al evento Onchange de dicho combobox muestre los datos correspondientes a ese rango en un dbgrid. El campo a consutar es 'Precio' (campo de tipo Moneda) que es parte de la tabla 'Ventas' en una base de datos hecha en access.

En resumen cuando el componente combobox tenga un texto de esta forma: $20.000.000 - 40.000.000 se pueda mostrar en el dbgrid las propiedades correspondientes a ese rango de precios. Espero haberme explicado bien. Saludos.
Responder Con Cita
  #2  
Antiguo 20-03-2014
cloayza cloayza is offline
Miembro
 
Registrado: may 2003
Ubicación: San Pedro de la Paz, Chile
Posts: 915
Poder: 23
cloayza Tiene un aura espectacularcloayza Tiene un aura espectacular
Bueno podria ser:

Opción 1:
Código Delphi [-]
procedure TForm1.cboxPreciosChange(Sender: TObject);
var
    PrecioMin, PrecioMax:integer; //Aquí debes definir el tipo adecuado a tu caso
    Valores:String;
    Value:String;
begin
       Valores:=cboxPrecios.Items[cboxPrecios.ItemIndex];
       //Valores='$20.000.000 - 40.000.000'

       //Ahora lo que debes hacer es separar esto en 20.000.000 y 40.000.000

       //Forma facil
       Value:=Copy(Valores,2,Pos('-',Valores)-1); //=>20.000.000;
       PrecioMin:=StrToInt(Value);

       Value:=Copy(Valores,Pos('-',Valores)+1, Length(Valores)); //=>40.000.000;
       PrecioMax:=StrToInt(Value);

       //Ahora en tu consulta debes incorporar el filtro adecuado
       Query1.....
       Query1.Add( Format('Where (Precio>=%d And Precio<=%d)',[PrecioMin, PrecioMax]));
       Query1.Open;
end;

Opción 2:
Código Delphi [-]
procedure TForm1.cboxPreciosChange(Sender: TObject);
var
    Valores:String;
    PrecioMin, PrecioMax:String;
begin
       //Valores='$20.000.000 - 40.000.000'
       Valores:=cboxPrecios.Items[cboxPrecios.ItemIndex];

       //Forma facil
       PrecioMin:=Copy(Valores,2,Pos('-',Valores)-1); //=>20.000.000;
       PrecioMax:=Copy(Valores,Pos('-',Valores)+1, Length(Valores)); //=>40.000.000;

       //Ahora en tu consulta debes incorporar el filtro adecuado
       Query1.....
       Query1.Add( Format('Where (Precio>=%s And Precio<=%s)',[PrecioMin, PrecioMax]));
       Query1.Open;
end;

Por supuesto que existen otras formas de realizar esto...Por algo se comienza...
Saludos cordiales
Responder Con Cita
  #3  
Antiguo 20-03-2014
Detenido Detenido is offline
Registrado
NULL
 
Registrado: oct 2012
Posts: 7
Poder: 0
Detenido Va por buen camino
Ok, muchas gracias por la respuesta lo voy a probar.
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
Delphi XE2 - Precios el-mono Noticias 101 27-07-2012 15:13:07
Historial de precios con SQL mRoman SQL 1 15-11-2011 12:33:35
Estos Precios !!!! AGAG4 Humor 0 13-01-2009 17:30:26
Precios de oferta seoane SQL 5 04-06-2008 20:39:38
¿existe alguna propiedad en TRichedit que permita mostrar el número de cada línea? nuri Varios 1 06-04-2006 13:58:17


La franja horaria es GMT +2. Ahora son las 10:03:24.


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