Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-09-2004
aurafern aurafern is offline
Miembro
 
Registrado: dic 2003
Posts: 34
Poder: 0
aurafern Va por buen camino
ya he probado con las comillas en la fecha

Código SQL [-]
and ("' ||fecha || '" - d.vencimiento)>=' ||:desde ||' '|| 'and ("' ||fecha|| '" - d.vencimiento)<='

le estoy pasando la fecha que tiene el dataset desde Delphi

y produce el siguiente error

General sql error, column unknown '09-sep-2004'
Responder Con Cita
  #2  
Antiguo 14-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Hola.

Las fechas, si las pasas como cadena tienen que estar con el formato mm/dd/yyyy

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #3  
Antiguo 14-09-2004
aurafern aurafern is offline
Miembro
 
Registrado: dic 2003
Posts: 34
Poder: 0
aurafern Va por buen camino
Disculpame la ignorancia pero yo escribo en Delphi:

Código Delphi [-]
query2.close;
query2.ParamByName('empresa').AsString:=' AND E.ID_EMPRESA=1 ';;
query2.ParamByName('sucursal').AsString:=' AND E.ID_SUCURSAL=1 ';
Query2.ParamByName('modelo').AsInteger:=4;
Query2.ParamByName('no_rango').AsInteger:=4;
query2.ParamByName('PFECHA').Asstring:=Formatdatetime('mm/dd/yyyy',mdFECHA.AsDateTime);
query2.ParamByName('PVENDEDOR').AsString:='';
query2.ParamByName('PZONA').AsString:='';
query2.ParamByName('PCUENTA').AsString:='';
query2.ParamByName('PTERCERO').AsString:=' AND E.ID_TERCERO=1 ';
query2.Open;

pfecha en el procedimiento timestamp
pfecha entre comillas

en delphi:
el parametro del query en delphi es date
y arroja:

column unknown 14-sep-2004

si

parametro pfecha en procedimiento varchar(20)
y el parametro pfecha en delphi date

column unknown 09/14/2004


y asi sucesivamente pruebo varias combinaciones y todas devuelven uno de estos dos mensajes

Disculpen la molestia!!
Responder Con Cita
  #4  
Antiguo 14-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Hola.

Prueba :

query2.ParamByName('PFECHA').Asstring := QuotedStr(Formatdatetime('mm/dd/yyyy',mdFECHA.AsDateTime));

Siendo el parámetro en el procedimiento varchar(20) y en Delphi string.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #5  
Antiguo 15-09-2004
aurafern aurafern is offline
Miembro
 
Registrado: dic 2003
Posts: 34
Poder: 0
aurafern Va por buen camino
Hola!!

Persiste el error
Responder Con Cita
  #6  
Antiguo 15-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 26
guillotmarc Va por buen camino
Sigues teniendo un problema en la consulta que construyes dinamicamente. No es válida.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #7  
Antiguo 15-09-2004
aurafern aurafern is offline
Miembro
 
Registrado: dic 2003
Posts: 34
Poder: 0
aurafern Va por buen camino
Bueno de todos modos muchas gracias por dedicar tiempo a los n problemas que se me presentan, en mi camino por el aprendizaje de delphi y Firebird

Después de dar muchas vueltas probando la alternativa de utilizar
EXECUTE STETEMENT. Y revisando con un compañero la sintaxis tanto en delphi como en firebird, no logramos hacer uso de esta característica que me ayudaría a solucionar muchos problemas.


Solucioné el problema utilizando like y pasando solo el valor del parametro

Código Delphi [-]
query2.close;
query2.ParamByName('empresa').AsString:='%';;
query2.ParamByName('sucursal').AsString:='%';
Query2.ParamByName('modelo').AsInteger:=4;
Query2.ParamByName('no_rango').AsInteger:=4;
query2.ParamByName('PFECHA').AsDateTime:=int(mdFECHA.AsDateTime);
query2.ParamByName('PVENDEDOR').AsString:='1';
query2.ParamByName('PZONA').AsString:='%';
query2.ParamByName('PCUENTA').AsString:='%';
query2.ParamByName('PTERCERO').AsString:='1';
query2.ParamByName('Psuc_TERCERO').AsString:='%';
query2.ParamByName('Psuc_VENDEDOR').AsString:='%';
query2.Open;


Código SQL [-]
FOR SELECT SUM(e.DEBITO-e.CREDITO) AS SALDO, e.ID_AUXILIAR,e.ID_EMPRESA_CRUCE, e.ID_SUCURSAL_CRUCE,e.ID_TIPO_DOC_CRUCE, e.numero_cruce, E.CUOTA_CRUCE,
d.fecha, d.vencimiento,e.id_tercero,e.ID_SUCURSAL_TERCERO, E.ID_VENDEDOR FROM CUENTAS_POR_TERCERO e , cuentas_por_tercero d
where e.ID_EMPRESA_CRUCE=d.ID_EMPRESA and e.ID_SUCURSAL_CRUCE=d.ID_SUCURSAL AND E.CUOTA_CRUCE=D.CUOTA
and e.ID_TIPO_DOC_CRUCE= d.id_tipo_doc and e.numero_cruce=d.numero  AND e.ID_EMPRESA like(:EMPRESA) AND E.ID_SUCURSAL like(:SUCURSAL)
and (fecha - d.vencimiento)>=:desde and (fecha - d.vencimiento)<=:hasta and e.id_tercero like(tercero) AND E.ID_VENDEDOR LIKE (:PVENDEDOR) AND E.ID_SUC_VENDEDOR LIKE (:PSUC_VENDEDOR)
and e.id_sucursal_tercero like (suc_tercero) and e.id_auxiliar like (cuenta)
GROUP BY e.ID_AUXILIAR,e.ID_EMPRESA_CRUCE, e.ID_SUCURSAL_CRUCE,e.ID_TIPO_DOC_CRUCE,
e.numero_cruce, E.CUOTA_CRUCE , d.fecha, d.vencimiento,e.id_tercero,e.ID_SUCURSAL_TERCERO, E.ID_VENDEDOR
having SUM(e.DEBITO-e.CREDITO)<>0
into :saldo,:id_auxiliar,:id_empresa,:id_sucursal,:id_tipo,:numero,:cuota,:fecha_DOC,:vencimiento,:id_ter  cero,:id_sucursal_tercero, :ID_VENDEDOR

Pero no sé que tan eficiente sea el like.

Saludos!!
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


La franja horaria es GMT +2. Ahora son las 13:56:22.


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