C Alves 1 Denunciar post Postado Novembro 11, 2008 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
bdexterholland 0 Denunciar post Postado Novembro 11, 2008 Uai, porque você não usa o IBQuery mesmo? Compartilhar este post Link para o post Compartilhar em outros sites
C Alves 1 Denunciar post Postado Novembro 12, 2008 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
ByOracle 0 Denunciar post Postado Novembro 12, 2008 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
C Alves 1 Denunciar post Postado Novembro 17, 2008 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
ByOracle 0 Denunciar post Postado Novembro 17, 2008 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
Chrnos 30 Denunciar post Postado Novembro 18, 2008 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
C Alves 1 Denunciar post Postado Dezembro 4, 2008 Pessoal, me desculpem pela demora em dar um retorno prá vocês. Fiquei sem computador e sem internet algum tempo por aqui. Obrigado mais uma vez por mais uma ajuda. Com a ajuda de vocês tá resolvido! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites