Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

manobr

[Resolvido] EConvertError with message ''' is not a v

Recommended Posts

Boa tarde a todos.

Depois de cansáveis tentativas, testes mal sucedidos e procuras pela net, resolvi postar meu problema.

É o seguinte, tenho uma planilha do Excel a qual importo ela para um StringGrid no Delphi (2006) porém, como são vários campos, alguns deles, do tipo DATA, estão vazios, mas na hora de inserir este campo pela minha Query (Query1.ParamByName('dat_pedido').AsDate := StrToDate(StringGrid1.Cells[9,i]) ) ela dá o erro dizendo que não pode converter pois é um vazio, como faço para ele inserir este campo mesmo sendo vazio? Até agora não consegui, tenho aprox. 30 campos e dentre eles uns 6 são de data. Fiz um loop até terminar os dados do StringGrid e os vazios das datas se alternam, uma hora é uma data vazia, outra hora é outra.

Obrigado pela atenção.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom... acho que o mais correto é você testar antes de informar a data se o campo é diverente de vazio não? E se for, inserir o null por exemplo como valor ... algo do tipo:

 

IF Trim(StringGrid1.Cells[9,i]) <> EmptyStr then
	Query1.ParamByName('dat_pedido').AsDate := StrToDate(StringGrid1.Cells[9,i]
else
	Query1.ParamByName('dat_pedido').AsDate := 'NULL'

Agora, se o campo em questão aceita valores nulos, você poderia montar usa query em runtime e só jogar este campo no insert se o campo no stringgrid não for vazio... facilitaria sua vida.

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.