Fórum Erro ao passar parametro para SP. #56623
24/07/2006
0
Tenho uma stored procedure que tem um parametro dentro de um in.
Exemplo: IdTurma in (:IdTurma)
Sendo que IdTurma é do tipo VarChar pois pode ser ´1´ ou ´1,2´ ou ´1,2,3´ mas quando eu passo esse parametro como VarChar ele não consegue trazer resultado.
Se eu fizar manual IdTurma in (1,2) ele retorna resultado.
Alguma dica?
Yallebr
Curtir tópico
+ 0Posts
24/07/2006
Cabelo
não falta aspas no parâmetro???
Gostei + 0
25/07/2006
Yallebr
Eu não estou chamando de dentro do programa ainda, estou chamando de dentro do IbExpert.
Estou passando assim qd abre a janela para informar os parametros:
[IdTurma] 1,2,3,4
Não pode colocar aspas pois se colocar aspas no In da erro.
Gostei + 0
25/07/2006
Cabelo
Se vc colocar aspas dá erro???? vc está colocando assim???
IdTurma in (||´´|| :IdTurma ||´´||)
será que dá erro mesmo ???
Gostei + 0
26/07/2006
Yallebr
Nao foi assm que coloquei nao, vou tentar novamente e aviso.
Obrigado.
Gostei + 0
26/07/2006
Yallebr
Realmente não funcinou.
Estou te passando o codigo para vc ver se é isso mesmo.
COMANDOSQL = ´SELECT DISTINCT(A.IdAluno) FROM Alunos A ´ || ´LEFT JOIN AlunosParcelas P ON A.IdAluno = P.IdAluno ´ || ´WHERE (CURRENT_DATE > P.Vencimento) AND (Pago = 0) and ´ || ´extract(year from vencimento) = 2006 and P.IdTipoCobranca ´ || ´in (´ || :STRIDTIPOCOBRANCA ||´)´; FOR execute statement :ComandoSQL into :intIdAluno DO BEGIN
O erro que aparece que é ´Arithmet Overload or Division By Zero....´
Valew
Gostei + 0
26/07/2006
Cabelo
FOR execute statement ´SELECT DISTINCT(A.IdAluno) FROM Alunos A ´ || ´LEFT JOIN AlunosParcelas P ON A.IdAluno = P.IdAluno ´ || ´WHERE (CURRENT_DATE > P.Vencimento) AND (Pago = 0) and ´ || ´extract(year from vencimento) = 2006 and P.IdTipoCobranca ´ || ´in (´ || ´´ || :STRIDTIPOCOBRANCA || ´´ ||´)´ into :intIdAluno DO BEGIN
Gostei + 0
28/07/2006
Yallebr
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)