Ir para conteúdo

POWERED BY:

Arquivado

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

C Alves

[Resolvido] Problemas no campo data

Recommended Posts

Boa tarde pessoal.

Meu campo data está dando o seguinte erro:

Invalid field Type,

O problema só pode ser neste campo porque sem ele tá dando certo.

Estou usando delphi 6 , interbase 7.5 e query do BDE.

 

Declarei este campo dessa forma no banco de dados:

data date,

E no botão gravar do formulário:

QCadProduto.ParamByName('DATA').asDate:=StrToDate(MskData.Text);

 

Usando uma IBQuery não dava problema e dava certo. Mas com a query do BDE não tá dando certo.

Só por agora é só este meu problema.

Se alguém puder me ajudar agradeço muito.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ué, mais aí que diacho de programado vô sê eu qui nem consigo fazê

um campo data usando uma query do BDE sô?

Eu passei a usar os componentes da paletta BDE para ganhar experiência com eles. Quero

também fazer algumas coisas com os componentes da paleta ADO e DBExpress para me familiarizar

com eles assim que o tempo der.

Eu disse que com IBQuery dava certo. Nas duas ultimas semanas que eu o usei a data estava saindo

errada. Aí passei a usar query e table do BDE Eu nem me lembrava mais disso. Mas como não tenho lá muita

experiência ainda e estava preocupado em fazer uns saldo por aqui dar certo, fui empurrando a solução do

campo data prá frente. Agora preciso arruma-lo.

Gostaria de saber o porquê desse invalid field type. Esse erro dá também com o table.

Se você ou algun outro colega puder me esclarecer isso agradeço muito.

Obrigado pela atenção. http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

talvez o problema pode ser este :

 

QCadProduto.ParamByName('DATA').ASDATETIME :=StrToDate(MskData.Text);

 

^ Tente da forma acima, talvez de certo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

By oracle, obrigado pela

ajuda. Não tá dando mais menssagem de erro.

Só que preciso digitar a data. Isso está acontecendo agora mesmo usando um IBQuery.

Seria bom que a data fosse colocada automáticamente sem precisar digita-la.

Se você ou algum outro colega puder me orientar nesse sentido fico mui grato. http://forum.imasters.com.br/public/style_emoticons/default/grin.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

da forma que esta :

QCadProduto.ParamByName('DATA').ASDATETIME :=StrToDate(MskData.Text);

sempre vai ter que ser digitada a data mesmo, pois o prametro esta vindo do MskData.Text, se ele estiver vazio, a data sera também vazia,

mas não entendi muito bem agora a funcionalidade disso , mas se quiser trocar pela data de hoje por exemplo ficaria assim

QCadProduto.ParamByName('DATA').ASDATETIME := Date;

Compartilhar este post


Link para o post
Compartilhar em outros sites

A questão principal neste caso é: a data é algo obrigatório de ser preenchido para executar sua consulta ou é opcional o preenchimento da mesma? Se for obrigatório ter uma data, dai entra outra questão: se a data não for informada, pega por default a data atual? Se for este o caso, você poderia por o seguinte código na hora de passar a data:

 

try
	QCadProduto.ParamByName('DATA').ASDATE :=StrToDate(MskData.Text);
except
	QCadProduto.ParamByName('DATA').ASDATETIME := Date;
end;

Agora, se sua data for opcional de preenchimento, ai você terá que montar sua query dinamicamente numa string, testando se a data foi preenchida e só pondo ela no where se a mesma tiver sido digitada... e só poderá passar ela por parâmetro se for preenchida no seu maskedit.

 

[]'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.