[firebase-br] Erro ao criar procedure: Too many Contexts of Relation/Procedure/Views

Andrei Luís compuvale.software em gmail.com
Qui Jun 1 23:52:21 -03 2006


Boa noite,

Estou alterando uma procedure já existente, e ao executar o comando
Alter Procedure, apareceu a msg de erro abaixo:

Invalid token.
invalid request BLR at offset 33327.
Too many Contexts of Relation/Procedure/Views. Maximum allowed is 127.

Trata-se de uma SP bastante extensa, 1446 linhas, apenas com Selects,
recuperando alguns valores e fazendo alguns cálculos simples, tem
ainda muitos parâmetros de retorno, cerca de 150.

O problema aconteceu quando eu inseri o seguinte select:

         select Coalesce(sum(total_a_pagar), 0)/1000-(:emprestimo_ano
+ :retorno_calculado_ano + :tac_ano)
             from propostas
             where extract(year from data_aprovado) between :ano-10 and :ano
             and filial_id=:wfilial_id
             and status='A'
             and tipo = 0
             and (contrato_sufixo is null
             or contrato_sufixo = '')
             into :juros_geral;

todas os parâmetros envolvidos, inclusive juros_geral estão declarados
corretamente.

A questão não é o select em si, pois utilizo select semelhante,
jogando em outra variável, trocando apenas a linha where .... between
:ano-10 and :ano para
where ...  = :ano.

Estou achando que tem algo a ver com limite de caracteres em uma SP.

Já pesquisei no Google, no histórico da lista e de outras listas e só
encontrei uma referência a fazer um backup e restore, que esse
problema é devido a já ter feito N alterações na SP, porém já fiz isso
e não resolveu. Estou pesquisando no livro Dominando o Firebird, by
Helen Borrie, mas ainda não achei nada por ali também.

Em último caso, vou dividir essa SP em duas, não vai me criar maiores
problemas, porém gostaria de aprender o que exatamente está causando
esse erro.

Alguém poderia dar uma luz?


[]s
Andrei

Win XP Pro + D4 Pro / D2006 Pro + FB 1.5.2 + IBO 4.6B




Mais detalhes sobre a lista de discussão lista