[firebase-br] Erro em FOR EXECUTE STATEMENT (Opa!)
Carlos H. Cantu (TeamFB)
listas em warmboot.com.br
Seg Mar 13 17:52:54 -03 2006
Olhe o SQL que está sendo gerado.
Datas tem que estar sempre entre '', e no seu caso, não estão.
[]s
Cantu (Membro do TeamFB - FireBase)
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br
dhc> Samuel,
dhc> É exatamente isso que está ocorrendo por aqui.
dhc> Agora, como é que posso deixar esse script de forma que resolva essa
dhc> questão?
dhc> Grato.
dhc> David
dhc> ----- Original Message -----
dhc> From: "samuel ferreira" <samuel.peres.ferreira em gmail.com>
dhc> To: "FireBase" <lista em firebase.com.br>
dhc> Sent: Monday, March 13, 2006 1:42 PM
dhc> Subject: Re: [firebase-br] Erro em FOR EXECUTE STATEMENT (Opa!)
dhc> ola
dhc> ja passei por isso. era uma variavel numerica q eu estava concatenando com
dhc> string.
dhc> vc esta unindo strings com variaveis tipo data no ' v_script = '
dhc> eu contornei o erro passando tudo pra string
dhc> samuel
dhc> Em 13/03/06, dvdmengarda em hotmail.com <dvdmengarda em hotmail.com> escreveu:
>>
>> Desculpem-me, segue a mensagem correta:
>>
>>
>> Criei a SP abaixo pelo ibexpert sem qualquer problema na compilação.
>> Quando executo a SP, o ibexpert reporta o seguinte erro:
>>
>> 'expression evaluation not supported
>> .
>> expression evaluation not supported.'
>>
>> Alterando a procedure e fazendo a utilização de FOR SELECT ... DO com o
>> mesmo script do anterior a procedure executa normalmente. Existe alguma
>> limitação para o "for execute statement"?
>>
>> Grato pela atenção.
>>
>>
>> David
>>
>>
>> *****************************************************************************************************************************************
>> /* usando "for execute statement" /*
>> create procedure geralcto(tipo_venda varchar(2), data_emissao date)
>> returns (numero_lct integer, data_lct date, debito varchar(10), credito
>> varchar(10), valor numeric(10, 2))
>> as
>> declare variable v_script varchar(512);
>> begin
>> data_lct = data_emissao;
>> if (tipo_venda = 1) then
>> v_script = 'select contacliente, contavendas, valorduplicata from
>> parcelas where (dataemissao = ' || :data_emissao || ')';
>> else
>> v_script = 'select contacliente, contavendas, valortitulo from vendas
>> where (dataemissao = ' || :data_emissao || ' and cancelamento = 1)';
>> for execute statement
>> v_script
>> into
>> :debito,
>> :credito,
>> :valor
>> do
>> begin
>> numero_lct = numero_lct + 1;
>> suspend;
>> end
>> end;
>>
>>
>> *****************************************************************************************************************************************
>> /* usando "for select ... do" /*
>> create procedure geralcto(tipo_venda varchar(2), data_emissao date)
>> returns (numero_lct integer, data_lct date, debito varchar(10), credito
>> varchar(10), valor numeric(10, 2))
>> as
>> begin
>> data_lct = data_emissao;
>> if (tipo_venda = 1) then
>> for select
>> contacliente, contavendas, valorduplicata from parcelas where
>> (dataemissao = :data_emissao)
>> into
>> :debito,
>> :credito,
>> :valor
>> do
>> begin
>> numero_lct = numero_lct + 1;
>> suspend;
>> end
>>
>> else
>> for select
>> contacliente, contavendas, valortitulo from vendas where (dataemissao
>> = :data_emissao and cancelamento = 1)
>> into
>> :debito,
>> :credito,
>> :valor
>> do
>> begin
>> numero_lct = numero_lct + 1;
>> suspend;
>> end
>> end;
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
>> Para editar sua configuração na lista, use o endereço
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
dhc> ______________________________________________
dhc> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
dhc> Para editar sua configuração na lista, use o endereço
dhc> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
dhc> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
dhc> ______________________________________________
dhc> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
dhc> Para editar sua configuração na lista, use o endereço
dhc> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
dhc> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
Mais detalhes sobre a lista de discussão lista