Erro em SP - ´Precompilar Erros: parsing error´

Firebird

08/10/2004

Amigos,

Mais uma vez recorro aos senhores...
A SP abaixo, cria uma Conta a Pagar, cria uma movimentacao e atualiza na tabela itemmovimentacao, alguns registros para esta nova movimentacao...
Entao eu passo como parametro (ZMOVIMENTACOES) uma string (algo como ´15, 23, 24, 25, 33, 34´) e quero que no final da SP estes registros sejam atualizados com o novo IDMovimentacao...

Está dando erro nos ´:´ do [b:ce5027c604]IN (:ZMOVIMENTACOES);[/b:ce5027c604]

Erro: Precompilar Erros: parsing error - :.


Alguem sabe onde posso estar errando?

CREATE PROCEDURE CPAGARRECEBERINS (
    ZDATALANCAMENTO DATE,
    ZNUMDOCUMENTO VARCHAR (20),
    ZIDGRUPOCONTA INTEGER,
    ZIDFORNECEDOR INTEGER,
    ZDATAEMISSAO DATE,
    ZVALORNOMINAL DECIMAL (8, 2),
    ZVALORPAGO DECIMAL (8, 2),
    ZOBSERVACAO VARCHAR (250),
    ZDOCTIPO VARCHAR (20),
    ZVALORICMS DECIMAL (6, 2),
    ZDESCONTO DECIMAL (6, 2),
    ZFRETETIPO VARCHAR (3),
    ZVALORFRETE DECIMAL (6, 2),
    ZIDFORMAPGTO INTEGER,
    ZIDFUNCIONARIO INTEGER,
    ZMOVIMENTACOES VARCHAR(150))
RETURNS (
    ZIDCPAGARRECEBER INTEGER,
    ZIDMOVIMENTACAO INTEGER)
AS
BEGIN

  ZIDCPAGARRECEBER = GEN_ID(GEN_CPAGARRECEBER,1);
  INSERT INTO CPAGARRECEBER
  (IDCPAGARRECEBER, DATALANCAMENTO, NUMDOCUMENTO, IDGRUPOCONTA, IDFORNECEDOR,
   DATAEMISSAO, VALORNOMINAL, VALORPAGO, OBSERVACAO, DOCTIPO,
   VALORICMS, DESCONTO, FRETETIPO, VALORFRETE, IDFORMAPGTO, IDFUNCIONARIO)
   VALUES
  (:zIDCPAGARRECEBER, :zDATALANCAMENTO, :zNUMDOCUMENTO, :zIDGRUPOCONTA, :zIDFORNECEDOR,
   :zDATAEMISSAO, :zVALORNOMINAL, :zVALORPAGO, :zOBSERVACAO, :zDOCTIPO,
   :zVALORICMS, :zDESCONTO, :zFRETETIPO, :zVALORFRETE, :zIDFORMAPGTO, :zIDFUNCIONARIO);

  ZIDMOVIMENTACAO = GEN_ID(GEN_MOVIMENTACAO,1);
  INSERT INTO MOVIMENTACAO (IDMOVIMENTACAO, DATAMOVIMENTACAO, SITUACAO, TIPOMOVIMENTACAO, IDFUNCIONARIOSOLICITA, IDCPAGARRECEBER)
  VALUES (:ZIDMOVIMENTACAO, ´NOW´, ´AT´, ´E´, :ZIDFUNCIONARIO, :ZIDCPAGARRECEBER);
  
  UPDATE ITEMMOVIMENTACAO SET SITUACAO = ´AT´, IDMOVIMENTACAO = :ZIDMOVIMENTACAO
  WHERE IDMOVIMENTACAO IN (:ZMOVIMENTACOES);

END



Rafaelunp

Rafaelunp

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

08/10/2004

Se não me engano, o IB não aceita parâmetros na cláusula IN


GOSTEI 0
POSTAR