[firebase-br] Erro em procedure

Eder Ribeiro ederonline em pop.com.br
Seg Jan 31 09:56:53 -03 2005


Bom dia pessoal,

    Estou com o sguinte problema:
    Criei uma procedure q apenas dá select utilizando alguns parametros e retorna o
resultado em alguns campos.
    Qdo eu dou o create ela funciona normalmente o problema é na hora de dar um
select nela.
    O erro que aparece é: "Variable type (position 3) in EXECUTE STATEMENT 'select
BAIXA.DATAPAGTO,
BAIXA.VALOR, BAIXA.NRLANCT' INTO does not match returned column type.


A procedure está logo abaixo.
/* ==============================================================================*/
create procedure SP_CONTASPAGAS (dDTINICIAL date,
                                   dDTFINAL date,
                                   iCODFORN integer,
                                   sCAMPOORDEM varchar(30)
                                  )
returns (dDATAPAGTO date, nVALOR numeric(8,2), iNRLANCTO integer,
         dEMISSAO date, dVENCIMENTO date, sRAZAOFORN varchar(50),
         iCODFORNEC integer)
as
declare variable sTEXTOSQL varchar(500);
begin
  sTEXTOSQL = 'select BAIXA.DATAPAGTO, BAIXA.VALOR, BAIXA.NRLANCTO, CPAGAR.EMISSAO,
CPAGAR.VENCIMENTO, FORNECEDOR.RAZAO, CPAGAR.CODFORN
               from CPAGAR
               inner join BAIXA      on CPAGAR.NRLANCTO = BAIXA.NRLANCTO
               inner join FORNECEDOR on CPAGAR.CODFORN  = FORNECEDOR.CODFORN
               where BAIXA.DATAPAGTO is not null ';

  if (:dDTINICIAL is not null) then
    sTEXTOSQL = sTEXTOSQL || ' and (BAIXA.DATAPAGTO between '''||:dDTINICIAL||'''
and '''||:dDTFINAL||''') ';

  if (:iCODFORN <> 0) then
    sTEXTOSQL = sTEXTOSQL || ' and (CPAGAR.CODFORN = '''||:iCODFORN||''') ';

  sTEXTOSQL = sTEXTOSQL || 'order by '||:sCAMPOORDEM;

  for execute statement sTEXTOSQL into :dDATAPAGTO, :nVALOR, :iNRLANCTO, :dEMISSAO,
                                :dVENCIMENTO, :sRAZAOFORN, :iCODFORNEC do
    suspend;
end

/* =====================================================================*/


Eder Ribeiro




Mais detalhes sobre a lista de discussão lista