Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

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

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 09-10-2008
Avatar de pmtzg
pmtzg pmtzg is offline
Miembro
 
Registrado: jul 2007
Posts: 179
Poder: 17
pmtzg Va por buen camino
Question Ayuda con IBQuery

Hola Compañeros
tengo una pequeña aplicación en la cual utilizo Delphi 7 y Firebird 2.1
a su vez un form con ibdatabase, ibquery, ibtransaction e ibtable

pero tengo dudas por que no me sale la ejecuación del query

esta es:

tengo una variable llamada consulta y un parametro
llamado document y una variable llamada misaldo(integer)
y le asigno lo siguiente:



al parametro lo di de alta en la opción del query-params y es de tipo string
conecto mi base, abro la ibtable
y lo que deseo hacer es que tome el valor de un campo llamado
cve_doc de esta manera
Código Delphi [-]
 
 
while not ibtable.Eof do 
begin
Ibquery.Sql.Clear;
consulta:='select , sum(cuen01.importe) as abono
              from
cuen01 inner join conc01 on cuen01.tipo_mov=conc01.num_cpto
where conc01.tipo='A' and conc01.con_refer <> 'N'
and cuen01.no_factura=:document';
 
ibquery.params.ParamByName('document').AsString:=Ibtable.FieldValue['cve_doc'];
Ibquery.Sql.Add(consulta);
Ibquery.Active:=true;
IBquery.Open;
misaldo:=IBquery.FieldValues['abonos'];
IBtable.Next;
end;

con esto deseo saber el saldo de cada documento
pero al momento de empezar me manda el mensaje de :
EdatabaseError With message 'Ibquery: Parameter 'document' not found'

alguien me podria orientar
que es lo que estoy haciendo mal
gracias por su ayuda ...,
Responder Con Cita
  #2  
Antiguo 09-10-2008
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 30
jhonny Va camino a la famajhonny Va camino a la fama
Pues asi, a simple vista, pruebalo asi y nos cuentas:

Código Delphi [-]
 
while not ibtable.Eof do 
begin
Ibquery.Sql.Clear;
consulta:='select , sum(cuen01.importe) as abono
              from
cuen01 inner join conc01 on cuen01.tipo_mov=conc01.num_cpto
where conc01.tipo=''A'' and conc01.con_refer <> ''N''
and cuen01.no_factura=:document';
 
Ibquery.Sql.Add(consulta);
Ibquery.Close;
Ibquery.ParamByName('document').AsString:=Ibtable.FieldValue['cve_doc'];
Ibquery.Open;
misaldo:=IBquery.FieldValues['abonos'];
IBtable.Next;
end;
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #3  
Antiguo 09-10-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 22
Caro Va por buen camino
Hola pmtzg, el error te da porque estas llenando el parametro antes de que armes tu consulta en la propiedad SQL, con lo que te ha puesto el amigo jhonny debería funcionarte.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #4  
Antiguo 05-06-2013
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 21
santiago14 Va por buen camino
Thumbs up

Cita:
Empezado por pmtzg Ver Mensaje
Hola Compañeros
tengo una pequeña ....
Código Delphi [-]
  
while not ibtable.Eof do 
begin
Ibquery.Sql.Clear;
consulta:='select , sum(cuen01.importe) as abono
              from
cuen01 inner join conc01 on cuen01.tipo_mov=conc01.num_cpto
where conc01.tipo='A' and conc01.con_refer <> 'N'
and cuen01.no_factura=:document';
 
ibquery.params.ParamByName('document').AsString:=Ibtable.FieldValue['cve_doc'];
Ibquery.Sql.Add(consulta);
Ibquery.Active:=true;
IBquery.Open;
misaldo:=IBquery.FieldValues['abonos'];
IBtable.Next;
end;
....
Me pasaba lo mismo, estuve toda la mañana con el tema y resulta que era el asuntito de las comillas.
A pesar de ser un post viejo, agradezco que lo hayan puesto en aquella oportunidad.

Santiago.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.
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
ayuda con ibquery CarlosHernandez Firebird e Interbase 14 20-07-2006 20:47:15
Refresh de un IBQuery perillan Conexión con bases de datos 1 28-08-2005 20:43:12
Filter en IBQuery StartKill Firebird e Interbase 1 27-08-2005 06:51:06
IBUpdateSQL - IBQuery dmagui Firebird e Interbase 3 11-07-2005 16:59:54
problemas con ibquery fcobanda Conexión con bases de datos 0 04-05-2005 02:31:15


La franja horaria es GMT +2. Ahora son las 03:32:27.


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