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)
-   -   Procedure (https://www.clubdelphi.com/foros/showthread.php?t=51176)

ozegarra 07-12-2007 16:31:21

Procedure
 
Hola, estoy tratando de crear un store procedure que me devuelva varios registros pero no se como.
Favor alguien me pueda ayudar.
Estoy usando "Sql Manager 2005 lite for InterBase/FireBird"
Esto es lo que tengo y me da un error.

Muchas gracias.
Oscar

Código SQL [-]
 
CREATE PROCEDURE VER_ALMACENES_X_PLANTA(
  PLANTA CHAR(2))
RETURNS(
  CODIGO CHAR(2),
  DESCRIPCION VARCHAR(100))
AS
begin
    for select a.ALM_CODIGO, b.ALM_DESCRIPCION
    from planta_almacenes a, almacenes b
    where a.PLAN_CODIGO = :Planta
    and a.ALM_CODIGO = b.ALM_CODIGO
    into :Codigo, :Descripcion;
    do Suspend;
end;

RolphyReyes 07-12-2007 16:37:18

Saludos.

Prueba a utilizar las etiquetas para que tu codigo se vea mejor.

Lo que te hace falta es BEGIN END despues del DO y el SUSPEND dentro del bloque anterior.

Hasta luego.

ozegarra 07-12-2007 17:01:59

Gracias RolphyReyes por la respuesta pero la verdad que no entendi que me quisiste decir.

La verdad soy nuevo en Delphi y FireBird y lo poco que se es lo que encuentro en internet.

RolphyReyes 07-12-2007 18:51:15

Saludos.

Cambie un poco tu sentencia y a esto es que me refiero

Código SQL [-]
FOR SELECT A.ALM_CODIGO, B.ALM_DESCRIPCION
FROM PLANTA_ALMACENES A
INNER JOIN ALMACENES B ON A.ALM_CODIGO = B.ALM_CODIGO
WHERE A.PLAN_CODIGO = :PLANTA
INTO :CODIGO, :DESCRIPCION
DO
BEGIN
  SUSPEND;
END;

Hasta luego.

ozegarra 07-12-2007 22:48:58

gracias por el intento pero tampoco funciona. Sigue saliendo el mismo error. Lo raro es que antes que le ponga el for...do no salio error al compilar, solo salia error al compilar por querer mostrar multiples filas.

Si alguien sabes que puedo estar haciendo mal, por favor ayudenme, sino voy a tener que renunciar al trabajo.
:_(

Saludos y Gracias
Oscar

ozegarra 07-12-2007 23:04:33

soy un vurro, gracias rony, el ultimo ";" no iba por eso el error.

Gracias.
Oscar


La franja horaria es GMT +2. Ahora son las 12:36:38.

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