CREATE OR ALTER PROCEDURE LIST_VEHICULOS
returns (
sid integer,
sficha varchar(10),
smarca varchar(20),
smodelo varchar(30),
splaca varchar(10),
scolor varchar(20),
sanio integer,
sasignado varchar(60),
scomb varchar(15),
stipo varchar(50),
sestado integer)
as
declare variable vid integer;
declare variable vficha varchar(10);
declare variable vmarca varchar(20);
declare variable vmodelo varchar(30);
declare variable vplaca varchar(10);
declare variable vcolor varchar(20);
declare variable vanio integer;
declare variable vasignado varchar(60);
declare variable vcomb varchar(15);
declare variable vtipo varchar(50);
declare variable vestado integer;
BEGIN
FOR SELECT V.VE_ID, V.VE_FICHA, V.VE_MARCA, V.VE_MODELO, V.VE_PLACA, V.VE_COLOR, V.VE_ANIO,
V.VE_ASIGNADOA, C.COMB_NOMBRE, T.TV_NOMBRE, A.AS_ESTADO FROM VEHICULOS V
LEFT JOIN COMBUSTIBLES C ON C.comb_id = V.comb_id
LEFT join TIPOS_VEHICULOS T ON T.tv_id = V.ve_tipo
LEFT JOIN asignacion A ON A.ve_id = V.ve_id
INTO :VID, :VFICHA, :VMARCA, :VMODELO,
:VPLACA, :VCOLOR, :VANIO, :VASIGNADO,
:VCOMB, VTIPO, VESTADO DO
BEGIN
SID = :VID;
SFICHA = :VFICHA;
SMARCA = :VMARCA;
SMODELO = :VMODELO;
SPLACA = :VPLACA;
SCOLOR = :VCOLOR;
SANIO = :VANIO;
SASIGNADO = :VASIGNADO;
SCOMB = :VCOMB;
STIPO = :VTIPO;
SESTADO = :VESTADO;
SUSPEND;
END
END
Saludos.