Stored Dinâmica - Execute Statement não funciona PQ?

Firebird

13/10/2004

Pessoal,

Tenho essa stored que é montada dinamicamente. Está dando erro somente quando passo o comando para minha variável XSQL. Quando uso o ´For Select do Suspend´ funciona. Mas quando uso ´For Execute Statement XSQL into...´ dá um erro na hora de executar a stored.

Erro: ´variable type (position 1) in EXECUTE STATEMENT ´SELECT PONTODEVENDA.DESCRICAOPONTODEVENDA, INTO DOES NOT MATCH RETURN´ ´.

Alguem saberia me esplicar o PQ e como solucionar?

Segue a stored:

----------------------------------------
CREATE PROCEDURE SP_RPT_OPERADORA_VENDA (RESTRICAO VARCHAR(500))
RETURNS (
DESCRICAOPONTODEVENDA VARCHAR(50),
SUM_OF_QTDEVENDA INTEGER,
SUM_OF_VALORBRUTOVENDA NUMERIC(15,2),
SUM_OF_COMISSAOVENDA NUMERIC(15,2),
SUM_OF_VALORLIQUIDOVENDA NUMERIC(15,2),
CODOPERADORA VARCHAR(10))
AS
DECLARE VARIABLE XSQL VARCHAR(1000);
begin

XSQL = ´SELECT PONTODEVENDA.DESCRICAOPONTODEVENDA,
SUM( VENDA.QTDEVENDA ) SUM_OF_QTDEVENDA,
SUM( VENDA.VALORBRUTOVENDA ), SUM_OF_VALORBRUTOVENDA,
SUM( VENDA.COMISSAOVENDA ) SUM_OF_COMISSAOVENDA,
SUM( VENDA.VALORLIQUIDOVENDA ) SUM_OF_VALORLIQUIDOVENDA,
VENDA.OPERADORAVENDA
FROM VENDA
INNER JOIN PONTODEVENDA ON (VENDA.PONTODEVENDAVENDA = PONTODEVENDA.CODPONTODEVENDA)
GROUP BY PONTODEVENDA.DESCRICAOPONTODEVENDA, VENDA.OPERADORAVENDA´;

IF (NOT RESTRICAO IS NULL) THEN
XSQL = XSQL || RESTRICAO;

FOR EXECUTE STATEMENT XSQL INTO :DESCRICAOPONTODEVENDA,
:SUM_OF_QTDEVENDA,
:SUM_OF_VALORBRUTOVENDA,
:SUM_OF_COMISSAOVENDA,
:SUM_OF_VALORLIQUIDOVENDA,
:CODOPERADORA
DO
suspend;
end




--------------------------------------


Fabiocarige

Fabiocarige

Curtidas 0
POSTAR