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 18-08-2008
Raptor Raptor is offline
No confirmado
 
Registrado: jul 2003
Ubicación: Santo Domingo R.D.
Posts: 105
Poder: 0
Raptor Va por buen camino
Unhappy Ayuda con ADOStoredProc + Interbase, por favor

Hola chicos, como estan espero que bien, tenia un rato que no entraba a este foro.

Si le he posible por favor necesito una manito con este caso, es mi primera ve que uso ADO con interbase, y estoy tratando de ejecutar un Store Procedure en mi base de datos de interbase desde delphi con ADO y me arroja un error (Dynamic SQL Error
-SQL error = -104
-Token unknown - line 1, char 0
- EXEC)

mi SP funciona muy bien corriendolo desde la misma base de datos, pero cuando lo pongo en delphi tengo el mencionado error.

mi sp :
CREATE PROCEDURE SP_GET_SECUENCIA (ID INTEGER)
returns (VSECUENCIA INTEGER)
AS

begin
vSecuencia=0;
FOR SELECT ult_secuencia
From control_secuencia
Where ID =:ID
into :vSecuencia
DO

BEGIN
vsecuencia=:vsecuencia + 1;
UPDATE control_secuencia
Set ult_secuencia=:vsecuencia
Where ID =:ID;
END
SUSPEND;
end


Codigo en delphi.

Try
With ADOStoredProc1 Do
Begin
Parameters.Clear;
ProcedureName:='SP_GET_SECUENCIA';
Parameters.Add;
parameters[0].name:='id';
parameters[0].value:=1;
ExecProc;
//active:=true;
End;

Except
On Error: Exception Do
raise;
End;


Tengo este mismo sp usandolo con BDE y funciona bien pero con ADO no.


gracias por su ayuda.

Nota : Estuve buscando este error en el foro y no lo encontre disculpe si ya estaba y no lo vi..
Responder Con Cita
  #2  
Antiguo 26-08-2008
Raptor Raptor is offline
No confirmado
 
Registrado: jul 2003
Ubicación: Santo Domingo R.D.
Posts: 105
Poder: 0
Raptor Va por buen camino
Hola chicos, me respondo yo mismo por si alguien se encuentra con este problema.

La forma de solucionar el problema creo en verda que es una chapusa, pero bueno funciona y si alguien tiene una mejor por favor ponerla aqui para corregir la mia.

aqui la dejo.

Poner un componente AdoQuery en la propiedad sql poner lo siguiente.

With adoGetSecuencia do
begin
Close;
SQL.Clear;
parameters.Clear;
Parameters.CreateParameter('Param1 ,ftInteger,pdOutput,0,null);
sql.add('execute procedure SP_GET_SECUENCIA ( '+IntToStr(Value)+')');
ExecSQL;
Result :=Parameters[0].Value;
end;

y listo esto resuelve el problema.

gracias a todos los que tuvieron la intesion de ayudar.
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 por favor jcarteagaf Varios 5 27-06-2006 12:27:13
Urgente..Insert en tablas interbase para delphi....ayuda por favor Aser Firebird e Interbase 6 29-04-2005 02:55:57
POR FAVOR: INTRODUCCION A INTERBASE O MySQL ingechile Conexión con bases de datos 1 25-11-2004 08:44:50
AYUDA, por favor! Waldo Conexión con bases de datos 5 01-11-2003 17:49:02
ayuda por favor haffo Varios 2 14-10-2003 16:08:45


La franja horaria es GMT +2. Ahora son las 20:19:04.


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