Array
(
)

No value for parameter ´h´. Mas eu botei!!!

Orlando Frade
   - 15 dez 2005

Amigos,
o q há de errado com esse código. o banco de dados eh o firebird

#Código

t := true;
if edtHora.Text = ´ : ´ then
t := false;
try
if t then
StrToTime(edtHora.Text);
except
messagebox(handle, ´você precisa digitar uma hora válida.´, ´´, mb_iconerror+mb_ok);
edtHora.SetFocus;
exit;
end;
qryAtualiza.SQL.Clear;
qryAtualiza.SQL.Add(´update compromissos set´);
qryAtualiza.SQL.Add(´hora=:h,´);
qryAtualiza.SQL.Add(´descricao=´+QuotedStr(MeDesc.Text));
qryAtualiza.SQL.Add(´where codcomp=´+cod);
qryAtualiza.ParamByName(´h´).Value := null;
if t then
qryAtualiza.ParamByName(´h´).AsTime := StrToTime(edtHora.Text);
messagebox(handle, pchar(qryAtualiza.SQL.Text), ´´, mb_iconinformation+mb_ok);
qryAtualiza.ExecSQL();
frmMain.cdsLista.Close;
frmMain.cdsLista.Open;
close;



Edilcimar
   - 15 dez 2005

talves pq o bd tem o campo H como time e vc está mandando uma hora com o formato hh:mm quando ele está esperando hh:mm:ss


Edilcimar
   - 15 dez 2005

era talvez, foi erro de digitação


Orlando Frade
   - 15 dez 2005

o erro acontece quando o boto o parametro como null


Edilcimar
   - 15 dez 2005

mas o time não pode ser null, mova a query para dentro do try, antes do except