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 24-03-2012
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 18
rufo Va por buen camino
Duda en consulta con SQL

Buenas tardesnoches amigos, resulta que estoy atoradillo en una consulta en la cual no le veo en donde pueda estar la falla o el porque el error, les anexo este codigo:

Código:
procedure TDEPRECIACIONES.Button3Click(Sender: TObject);
begin
 if combobox4.Text<>'' then
 begin
    with dm1.Q_activos do
    begin
      active:=false;
      sql.Clear;
      sql.add('select * from Activos_fijos');
      sql.add('where id_activof='+combobox4.Text);
      active:=true;
        if recordcount=0 then
         messagedlg('No se encontro el Activo Fijo, intente de nuevo',mtinformation,[mbok],0);
         begin
           label16.Caption:=fieldbyname('costo').asstring;
           label18.Caption:=fieldbyname('fecha').asstring;
         end;
    end;
end;
end;
El anterior codigo es en un boton en el cual eligo una opcion de un combobox y al da clic en el boton me dice que Error que me falta un operador pero no se que operador se refiera, bueno espero que me ayuden y de antemano gracias.

P.D. Uso Delphi 2007
Responder Con Cita
  #2  
Antiguo 24-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola rufo.

Te faltó aclarar con que componentes estas trabajando, pero reemplazá estas líneas:
Código Delphi [-]
     ...
     sql.add('select * from Activos_fijos');
     sql.add('where id_activof='+combobox4.Text);
     ...

Por estas:
Código Delphi [-]
      ...
      sql.add('select * from Activos_fijos');
      sql.add('where id_activof = :DATO');
      ParamByName('DATO').AsString:= combobox4.Text;
      ...
Si es un ADOQuery, sería :
Código Delphi [-]
     Parameters.ParamByName('DATO').AsString:= combobox4.Text;

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #3  
Antiguo 24-03-2012
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Aparte de lo que dice mi amigo yo lo haria asi:
Código Delphi [-]
procedure TDEPRECIACIONES.Button3Click(Sender: TObject);
begin
 if combobox4.Text<>'' then
 begin
    with dm1.Q_activos do
    begin
      active:=false;
      sql.Text:= ' select * from Activos_fijos '+
                 ' where id_activof = :combo4';
     Parameters[0].Value:= combobox4.Text;
      active:=true;
        if recordcount=0 then
         messagedlg('No se encontro el Activo Fijo, intente de nuevo',mtinformation,[mbok],0);
         begin
           label16.Caption:=fieldbyname('costo').asstring;
           label18.Caption:=fieldbyname('fecha').asstring;
         end;
    end;
end;
end;
No me gusta el add.
Saludos
__________________
Siempre Novato
Responder Con Cita
  #4  
Antiguo 26-03-2012
maru_onofre maru_onofre is offline
Registrado
NULL
 
Registrado: feb 2012
Posts: 9
Poder: 0
maru_onofre Va por buen camino
Yo lo realizo de esta manera espero sea de tu ayuda

Código Delphi [-]
dm.ADOQuery_libros_filtro.Close;
dm.ADOQuery_libros_filtro.SQL.Clear;
dm.ADOQuery_libros_filtro.SQL.Add('Select* from libros where couter like :cod');
dm.ADOQuery_libros_filtro.Parameters.ParamByName('cod').Value:= '%'+txtdato.Text+'%';
dm.ADOQuery_libros_filtro.Open;


if (dm.ADOQuery_libros_filtro.IsEmpty) then
begin
ShowMessage('El Dato ('+txtdato.Text+') No Esta Registrado ');
end
else
begin
DBGrid1.Visible:= true;
DBGrid1.DataSource:= dm.DsFiltro;
Responder Con Cita
  #5  
Antiguo 26-03-2012
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 18
rufo Va por buen camino
Ok gracias a los que me respondieron pero he puesto en los ejemplos que me han dado pero no me devuelve nada de informacion ni un error y los componentes que estoy utilizando es un combobox en el cual dentro de este mismo esta una lista y la cual eligiendo una opcion me muestre sus demas datos en un label, bueno espero que me den mas sugerencias y de antemano gracias.
Responder Con Cita
  #6  
Antiguo 26-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola rufo.

No sé que puedas estar haciendo ya que no he visto como implementaste las sugerencias y desconozco los valores de la tabla que usas...

Para que puedas revisar con tranquilidad un ejemplo en funcionamiento, te adjunto uno utilizando ADO sobre la tabla COUNTRY (dbdemos.mdb) que viene con Delphi.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 02-05-2012 a las 07:26:56.
Responder Con Cita
  #7  
Antiguo 26-03-2012
rufo rufo is offline
Miembro
 
Registrado: jul 2006
Posts: 240
Poder: 18
rufo Va por buen camino
Listo ya me quedo gracias a todos los que me contestaron de todos modos les anexo la solucion

Código Delphi [-]
procedure TDEPRECIACIONES.Button3Click(Sender: TObject);
begin
 if combobox4.Text<>'' then
 begin
    with dm1.Q_activos do
    begin
      active:=false;
      sql.Clear;
      sql.Add(' select * from Activos_fijos ');
      sql.add('where activo = :activo');
      ParamByName('activo').Value:= ComboBox4.Text;
      active:=true;
        if recordcount=0 then
         messagedlg('No se encontro el Activo Fijo, intente de nuevo',mtinformation,[mbok],0);
         begin
           label16.Caption:=fieldbyname('costo').asstring;
           label18.Caption:=fieldbyname('fecha').asstring;
         end;
    end;
end;
end;

Cuando termine mi proyecto Depreciaciones lo subera, y gracias a todos.
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
Duda con consulta SQL cmfab Varios 3 08-02-2012 16:00:24
Duda con consulta enecumene Conexión con bases de datos 2 07-03-2007 03:54:41
Duda en consulta SQL BlueSteel SQL 2 18-05-2005 23:22:27
Duda con una consulta en access bustio Tablas planas 2 14-03-2005 15:51:35
Duda sobre consulta SQL kukinn SQL 2 17-10-2003 08:59:43


La franja horaria es GMT +2. Ahora son las 14:11:21.


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