Fórum procedure que não funciona o que fazer ? #38186

21/08/2003

0

a procedure em si não dá nenhum erro ... mas não insere valores... foi constatado que está recebendo os valores. Mas não grava. O que fazer ?
---------------------------------
with Dm_locadora.SProcedure do
begin
ParamByName(´codrecibo´).AsInteger:=i_contador;
ParamByName(´codclien´).AsInteger:=strtoint(Editcodigo.Text);
parambyname(´codprod´).AsInteger:=StrToInt(Editcodfita.Text);
parambyname(´dtloc´).AsDate:=dt_hoje;
ParamByName(´dtdev´).AsDate:=dt_hoje+Dm_locadora.Qry1.Fields[6].value;
parambyname(´valor´).AsCurrency:=Dm_locadora.Qry1.Fields[5].Value;
parambyname(´vltotal´).AsCurrency:=strtofloat(Edittotal.Text);
try
ExecProc;
Dm_locadora.TransactionLocad.CommitRetaining;
except
Dm_locadora.TransactionLocad.RollbackRetaining;
erro3;
end;
end;

esta é a procedure no firebird
------------------------------------------
set term^;
create procedure sp_locacao
(
:codrecibo integer, :codclien integer, :codprod integer, :dtloc date, :dtdev date,
:valor decimal(9,2), vltotal decimal(9,2)
)
insert into recibo (cod_recib,cod_clien,cod_prod,dtloc_recib,dtdev_recib,vl_recib,
vltot_recib) values (:codrecibo, :codclien, :codprod, :dtloc, :dtdev, :valor, vltotal );
end^
set term ;^

a procedure foi criada como conforme acima !


Midas

Midas

Responder

Posts

21/08/2003

Afarias

|a procedure em si não dá nenhum erro ... mas não insere valores... foi
|constatado que está recebendo os valores. Mas não grava. O que fazer ?

Vc usou um SQL Monitor para verificar isso?? Já testou a procedure no IBConsole??

Não dá erro?! Não acontece nada?!?! Está testando a aplicação em ´Run´ (depurando) ??


// sugiro -- até por simplicidade a pequena alteração a seguir::
try
ExecProc;
Transaction.CommitRetaining;
except
Transaction.RollbackRetaining;
erro3;
end;
end;


|a procedure foi criada como conforme acima !

quanto a procedure, não parece ter nada de errado com ela... pode ser alguma constraint na tabela, más, vc diz q não dá erro!! -- realmente, estou sem idéias :(


T+


Responder

Gostei + 0

21/08/2003

Allen74

Já tá meio tarde mas acho que minhas vistas ainda estão boas. No códico da procedure que foi postado não estão faltando os dois pontos para o parâmetro vltotal?


Responder

Gostei + 0

22/08/2003

Midas

já estou ficando louco !!!!!!!!!! Alen vc tem razão foi apenas um erro de digitação ! Como disse o codigo está compilando e está dando ok. No ibexpert executo a procedure acima passando parametros manualmente, então apos executar ele não me passa erro algum e os valores vão ficando no parameters history, mas ao analisar a tabela vejo que o data do campo não possui valores !!!!!!! Alguma ideia ?


Responder

Gostei + 0

22/08/2003

Midas

Pessoal ! boa noticia ! hoje pela manhã testei a procedure e ele funcionou !!!
Não quero nem saber o que aconteceu... só sei que está funcionando agora .... Valeu pessoal .


Responder

Gostei + 0

22/08/2003

Afarias

Boa vista Allen74, está faltando mesmo...

...e vc heim Midas?! :roll: ...teste melhor seus códigos né!!


T+


Responder

Gostei + 0

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

Aceitar