Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 10-09-2008
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 255
Poder: 20
vroa74 Va por buen camino
sql dinamico interbase

estoy tratando de construir una sentencia sql dinamica, mas sin embargo me marca errores.
Necesito buscar por rango de fechas y por nombre mas no he podido.
no se si esta bien la forma en que lo plamo o quizas haya algun caracter que sea diferente.
aqui esta el codigo....
Código Delphi [-]
var   FIni, FFin  :String;
      A,M,D : Word;

begin
 if Form1.IBQuery1.Active then
 begin
   form1.IBQuery1.Close;
   form1.IBQuery1.SQL.Clear;
   Memo1.Text :='';
 end;

  with form1 do
  begin
          IBQuery1.SQL.Add('SELECT');
          IBQuery1.SQL.Add('servicios.`status`,');
          IBQuery1.SQL.Add('servicios.id_ser,');
          IBQuery1.SQL.Add('servicios.f_recep,');
          IBQuery1.SQL.Add('servicios.f_ini,');
          IBQuery1.SQL.Add('servicios.nombre,');
          IBQuery1.SQL.Add('servicios.ofi_dir,');
          IBQuery1.SQL.Add('servicios.f_ter,');
          IBQuery1.SQL.Add('servicios.ob_sol,');
          IBQuery1.SQL.Add('servicios.m_correc,');
          IBQuery1.SQL.Add('servicios.m_prev,');
          IBQuery1.SQL.Add('servicios.software,');
          IBQuery1.SQL.Add('servicios.red,');
          IBQuery1.SQL.Add('servicios.`diseño`,');
          IBQuery1.SQL.Add('servicios.soporte,');
          IBQuery1.SQL.Add('servicios.impresion,');
          IBQuery1.SQL.Add('servicios.sol,');
          IBQuery1.SQL.Add('servicios.sol_via_email,');
          IBQuery1.SQL.Add('servicios.sol_via_ofi,');
          IBQuery1.SQL.Add('servicios.sol_via_oral,');
          IBQuery1.SQL.Add('servicios.sol_via_tel,');
          IBQuery1.SQL.Add('servicios.sol_via_otro,');
          IBQuery1.SQL.Add('servicios.sol_via_ofi_num,');
          IBQuery1.SQL.Add('servicios.sol_via_memo,');
          IBQuery1.SQL.Add('servicios.ac_rea,');
          IBQuery1.SQL.Add('servicios.obser,');
          IBQuery1.SQL.Add('servicios.respon,');
          IBQuery1.SQL.Add('servicios.dir_resp,');
          IBQuery1.SQL.Add('servicios.img');
          IBQuery1.SQL.Add('FROM');
          IBQuery1.SQL.Add('servicios');
          IBQuery1.SQL.Add('WHERE');
          IBQuery1.SQL.Add('servicios.nombre ='+Edit1.Text+'');
          if (JvDateTimePicker1.Date = JvDateTimePicker2.Date) then
           begin
                  IBQuery1.SQL.Add('Date_Format(servicios.f_ini,''%d/%m/%Y'') = '+ QuotedStr(DateToStr(JvDateTimePicker1.Date)) +'');
                  Memo1.Text := 'si paso';
            end else begin
              DecodeDate(JvDateTimePicker1.Date,A,M,D);
              FIni := IntToStr(A) + '/' + IntToStr(M)+ '/' + IntToStr(D);
              DecodeDate(JvDateTimePicker2.Date,A,M,D);
              FFin := IntToStr(A) + '/' + IntToStr(M)+ '/' + IntToStr(D);
              IBQuery1.SQL.Add('ANd');
              IBQuery1.SQL.Add('servicios.f_ini BETWEEN '+QuotedStr(Fini) + ' AND ' + QuotedStr(FFin));
          Memo1.Lines.Add (Form1.IBQuery1.SQL.Text);
          IBQuery1.Open; // abrir query

Última edición por vroa74 fecha: 10-09-2008 a las 19:06:08. Razón: ERROR DE ESTRITURA
Responder Con Cita
  #2  
Antiguo 10-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.572
Poder: 27
egostar Va camino a la fama
Hola

Es curiosa la forma como agregas el texto a tu Query, bueno, eso es estilo de cada quien, no problema.

Yo alcanzo a ver unos detalles, te hace falta agregar espacios en las lineas que te muestro, checa como lo tienes y compara como te lo sugiero.

Código Delphi [-]
          IBQuery1.SQL.Add('SELECT ');
          IBQuery1.SQL.Add('servicios.`status`,');
          //:::::::::::
          IBQuery1.SQL.Add(' FROM ');
          IBQuery1.SQL.Add('servicios ');
          IBQuery1.SQL.Add('WHERE ');
          IBQuery1.SQL.Add('servicios.nombre = '+QuotedStr(Edit1.Text));

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
Responder Con Cita
  #3  
Antiguo 10-09-2008
Avatar de vroa74
vroa74 vroa74 is offline
Miembro
 
Registrado: jul 2006
Posts: 255
Poder: 20
vroa74 Va por buen camino
Question

muchas gracisa por la ayuda

me estoy topando con otro problema
como puedo buscar por ejemplo a todos los que se llama jose
si en el campo nombre algunos se llaman jose angel, o jose luis ???
como podria ser la sentencias
Código Delphi [-]
         IBQuery1.SQL.Add('NOMBRE LIKE '+QuotedStr(Edit3.Text));
Tengo dudas si lleva otro prametro pues no me esta respetando los nombres dobles por ejemplo Jose Luis no lo intrege en la busqueda

Última edición por vroa74 fecha: 10-09-2008 a las 21:28:29.
Responder Con Cita
  #4  
Antiguo 10-09-2008
Avatar de felipe88
[felipe88] felipe88 is offline
Miembro Premium
 
Registrado: may 2007
Ubicación: Mi Valle del Cauca... Colombia!!!
Posts: 1.120
Poder: 21
felipe88 Va por buen camino
Usa un like...
__________________
Web
Responder Con Cita
  #5  
Antiguo 11-09-2008
ninguno ninguno is offline
Miembro
 
Registrado: sep 2008
Posts: 45
Poder: 0
ninguno Va por buen camino
Hola

Prueba con

Código Delphi [-]
IBQuery1.SQL.Add('NOMBRE LIKE ' + QuotedStr('%' + Edit3.Text + '%'));
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Array Dinamico VRO Varios 6 14-06-2005 12:40:16
red con direccionamiento dinamico santiago14 Conexión con bases de datos 1 24-01-2005 13:07:50
arreglo dinamico prubtest C++ Builder 1 31-07-2004 23:54:45
Array Dinamico senpiterno Varios 4 22-07-2004 18:37:06
IP Dinámico buitrago Varios 3 10-09-2003 18:35:43


La franja horaria es GMT +2. Ahora son las 06:30:33.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi