GARANTIR DESCONTO

Fórum Procedure com string no operador IN #458046

09/10/2013

0

Galera estou precisando realizar uma consulta utilizando um string com o operador IN do firebird, mas da o seguinte erro:overflow occurred during data type conversion conversion error from string firebird, sei que é devido as aspas duplas, mas não consigo resolver.

Meu parâmetro de entrada vai receber as seguintes strings: '827','828','829','0'

CREATE PROCEDURE sp_teste(
    ivalor varchar(100))
returns (
    prod_id integer,
    qtde numeric(5,2))
as
BEGIN
  FOR
    select distinct
        cargas_itens.prod_id,
        sum(cargas_itens.ci_qtde)
    from cargas_itens
       inner join produtos on (cargas_itens.prod_id = produtos.prod_id)
    where
      cargas_itens.car_id  in (:ivalor)
    group by cargas_itens.prod_id
    INTO :PROD_ID,
         :QTDE
  DO
  BEGIN
    SUSPEND;
  END
END
Sidney Abreu

Sidney Abreu

Responder

Posts

17/10/2013

Thiago Irrazabal

Bom dia, não sei se ainda está com a dúvida, mas se tu der um replace no teu parâmetro de entrada, antes de usar ele no select tirando as aspas acho que funcionária.


Att,
Thiago Irrazabal de Oliveira.
Responder

Gostei + 0

17/10/2013

Deivison Melo

Utilize o
statement sql do Firebird

Exemplo:

[url]http://gustavohenriquephn.wordpress.com/2008/03/26/utilizando-o-execute-statement-em-uma-procedure-selecionavel-no-firebird/[/url]
Responder

Gostei + 0

30/10/2013

Deivison Melo

Como está o andamento desse post ?
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar