Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Problema con Procedimiento Almacenado Offset 88 (https://www.clubdelphi.com/foros/showthread.php?t=16119)

AGAG4 16-11-2004 21:01:54

Problema con Procedimiento Almacenado Offset 88
 
Uso FireBird 1.52
Tengo alguna problema con los Proc. Almacenados, lo que pasa es que al crear uno me marca el siguiente error:

Invalid Token
Invalid request BLR at offset 88
parameter mismatch for procedure GRABA_CONSEC_FACM

En el Nuevo Procedimiento pongo la siguiente linea:
Código SQL [-]
execute procedure graba_consec_facm(:FOLS,:SERIE,:BODEGA,:TABLA);
suspend;

Como lo muestro arriba se manda a llamar otro Procedimiento Almacenado que tiene exactamente 25 Lineas de Código, por lo que investigue hay problemas con el tamaño en Bytes de un Procedimiento Almacenado al rebasar el limite de bytes, pero con 25 Lineas creo que no sea el caso.

Agradezco cualquier sugerencia.

AGAG4 16-11-2004 21:53:52

Ya hice pruebas.... y nop
 
Ya realice pruebas de Backup y Restore de la BD, reinstale FireBird 1.52 en el Servidor, estoy usando WinXp en mi pc que es donde trato de crear el Proc. Almacenado.. y me sigue marcando el mismo error al Crear el Proc. Almacenado.

Agradezco cualquier sugerencia.

roman 16-11-2004 22:01:51

Y ¿estás seguro que en la definición de graba_consec_facm declaras cuatro parámetros?

// Saludos

AGAG4 16-11-2004 22:22:52

Asi es Roman
 
Si tengo declarados los 4 Parámetros en graba_consec_facm, antes de querer crear el Nuevo Proc. Almacenado metí un nuevo parámetro en el graba_consec_facm que es el primero que aparece :FOLSUST.

Es la primer vez que creo un Proc. Almacenado en donde hago una llamada a otro Proc. para evitarme de escribir las 25 lineas que tiene el otro solo lo quiero mandar a llamar.

execute procedure graba_consec_facm(:FOLSUST,:SERIE,:BODEGA,:TABLA);

El problema es que me sigue marcando el mismo error que mencione arriba.

Lo mismo pense que era problema de los parámetros pero ya revise bien y son los mismos parámetros:

parameter mismatch for procedure GRABA_CONSEC_FACM



Gracias por su respuesta.

roman 16-11-2004 22:40:26

Probando en FireBird 1.5.1 veo que los parámetros del procedimiento, cuando lo llamas con execute, deben listarse sin paréntesis. Y si el procedimiento devuelve valores debes usar returning_values.

// Saludos

AGAG4 17-11-2004 02:05:40

No quiere :(
 
Gracias por su respuesta Roman pero ya intente como me dice sin parentesis :
Código SQL [-]
CREATE PROCEDURE GRABA_FACSUSTITUCION (
    FOLSUST INTEGER,
    SERIE VARCHAR(2),
    BODEGA SMALLINT,
    TABLA VARCHAR(3))
AS
begin
  execute procedure graba_consec_facm :FOLSUST,:SERIE,:BODEGA,:TABLA;
  suspend;
end
 
/*******/
Con parametros:
  execute procedure graba_consec_facm :FOLSUST,:SERIE,:BODEGA,:TABLA
  returning_values :folsust;

Pero ahora me cambia el offset del error:

Cannot commit transaction:
Invalid token.
invalid request BLR at offset 98.
parameter mismatch for procedure GRABA_CONSEC_FACM.

De antemano Gracias.

AGAG4 17-11-2004 15:55:57

Como por Arte de Magia
 
Bueno Sr. Roman, aqui tengo la Solución, acabo de llegar a la Oficina encendí el Servidor y despues mi PC y al Abrir el IBExpert Ver. 2004 entre a la Base de Datos, Volvi a Ejecutar el Script para crear el Proc. Almacenado y que Cree????
No me marco Error :confused: , no se que pasaría ayer, tambien hice eso, reinicie el servidor y despues mi PC que son los unicos que entran por lo pronto a la Base de datos, pero bueno no se que pasaría pero ya funciono....
Le agredezco sus Respuestas.

Que tenga buen día.

roman 17-11-2004 16:05:01

Cita:

Empezado por AGAG4
pero bueno no se que pasaría pero ya funciono....

Seguramente faltaba esa taza de café reparador tan necesaria por las mañanas ;)

Aprovecho para un comentario amistoso: Por favor ya no te refieras a mi como Señor ni me hables de usted que si bien ya no me cuezo al primer herbor aún no estoy en esa edad.

// Saludos

AGAG4 19-11-2004 23:02:55

Gracias....!!!!
 
Ok Sr. Roman hooo ;) perdon Roman, y pues si faltaba esa taza de cafe por las mañanas... Que tenga buen día.


La franja horaria es GMT +2. Ahora son las 02:24:29.

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