Erro ao fazer Locate (Is not a valid timestamp)
Boa tarde.
Quando eu tento fazer esse locate:
O campo hrservico no banco está como time.
Ta retornando esse erro: Is not a valid timestamp...
Já tentei de várias maneiras mas sempre fica nisso.
Quando eu tento fazer esse locate:
horario: String;
tHora : TTime;
horario:= StringGrid2.Cells[0,i]; // Aqui eu pego o horário de uma coluna selecionada na StringGrid.
tHora := StrToTime( horario);
tblAgenda.Locate('hrservico',tHora,[]);
O campo hrservico no banco está como time.
Ta retornando esse erro: Is not a valid timestamp...
Já tentei de várias maneiras mas sempre fica nisso.
Vander Carlos
Curtidas 0
Respostas
Claudia Nogueira
19/12/2012
Tenta assim:
try
tHora := StrToTime(horario);
except
ShowMessage('Hora Inválida!');
Exit;
end;
tblAgenda.Locate('hrservico',FormatDateTime('hh:mm:ss',tHora),[]);
GOSTEI 0
Vander Carlos
19/12/2012
Mesmo erro.
Quando seleciono a linha dou um: ShowMessage(horario);
E me retorna o horário certo: 07:00:00
Quando seleciono a linha dou um: ShowMessage(horario);
E me retorna o horário certo: 07:00:00
GOSTEI 0
Claudia Nogueira
19/12/2012
Antes de responder eu testei.
Criei o BD e a tabela no MySQL e fiz seu código e não deu erro.
Qual BD você usa?
Criei o BD e a tabela no MySQL e fiz seu código e não deu erro.
Qual BD você usa?
Mesmo erro.
Quando seleciono a linha dou um: ShowMessage(horario);
E me retorna o horário certo: 07:00:00
Quando seleciono a linha dou um: ShowMessage(horario);
E me retorna o horário certo: 07:00:00
GOSTEI 0
Vander Carlos
19/12/2012
MySQL -> Toad -> E os componentes são os do MySql.
GOSTEI 0
Emerson Nascimento
19/12/2012
tente:
try
tHora := StrToTime(horario);
tblAgenda.Locate('hrservico',tHora,[]);
except
ShowMessage('Hora Inválida!');
end;
GOSTEI 0
Vander Carlos
19/12/2012
O locate que eu estava fazendo era com 3 campos, codcliente, dataagendamento e o horario.
Como só tava dando errado com o horário só postei o locate dele, fui tentar só com ele e deu certo:
Porém quando eu clico mais de 2 vezes em uma linha da tabela para fazer a pesquisa, o erro: Is not a valid timestamp aparece novamente...
tblAgenda.Locate('codcli;dtagendamento;hrservico', VarArrayOf([codCli,
Data,
FormatDateTime('hh:mm:ss',tHora)]), []);
Como só tava dando errado com o horário só postei o locate dele, fui tentar só com ele e deu certo:
tblAgenda.Locate('hrservico', FormatDateTime('hh:mm:ss',tHora),[]); Porém quando eu clico mais de 2 vezes em uma linha da tabela para fazer a pesquisa, o erro: Is not a valid timestamp aparece novamente...
GOSTEI 0
Vander Carlos
19/12/2012
Ou quando eu seleciono linhas diferentes.
Por exemplo, clico na linha do Horário de 07:00:00 e faz a pesquisa normal, quando clico em outra linha 07:30:00 aparece o erro de novo.
Por exemplo, clico na linha do Horário de 07:00:00 e faz a pesquisa normal, quando clico em outra linha 07:30:00 aparece o erro de novo.
GOSTEI 0