incorret values within SQLDA structure (sistema 3 Camadas)

Delphi

27/06/2007

Olá amigos, meu sistema em 3 camadas de uma hora pra outra começou a dar este erro ´Incorret values within SQLDA structure´.

Seguinte.. tenho um campo de FOTO.. que tenho o componente DBImage do DevExpress... seleciono a foto e mando gravar e dá erro..

O estranho que se eu der um Active no CDS ele funciona sem problemas... só dá problema se eu alterar a FOTO, o campo Blob.

O que pode ser isso?

Desde já agradeço.

[]s


Titanius

Titanius

Curtidas 0

Respostas

Brunolspp

Brunolspp

27/06/2007

Salve amigo!!

vc ja tentou refazer os datasets e providers? verificou a configuiração dos parametors?

se nada disso resolver pode ser tb corrupção de dados no banco.


GOSTEI 0
Titanius

Titanius

27/06/2007

Salve amigo!! vc ja tentou refazer os datasets e providers? verificou a configuiração dos parametors? se nada disso resolver pode ser tb corrupção de dados no banco.


Olá Bruno,

Já refiz tudo.. exclui SQLDataSet, Provider, ClientDataSet.. refiz e nada...

Corrupção de dados está fora, porque pelo IBExpert consigo visualizar os dados.

O problema é que se eu alterar o cadastro, qualquer coisa, não dá erro, somente na FOTO. E pelo que eu entendi, me parece que o CDS ou o DSP não estão conseguindo passar o Blob como parâmetro.

Já tentei de tudo quanto é forma e nada... alguma sugestão?

[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

hum...como vc esta fazendo?

nao vejo pq passar o blob como parametro..

ele vai com tfield, trabalho com imagens sem nenhum tipo de problema, e imagens pesadas, de diagnostico medico.


GOSTEI 0
Renatacoimbra

Renatacoimbra

27/06/2007

Oi Bruno,

vir q vc trabalha com Mult-camadas,
01 - Como vc trabalha com Imagens, vc grava no banco ?
02 - Ou vc usa uma pasta compartilhada no servidor para essas imagns ?

se for a segunda opção, como vc faz quando o acesso é feito remotamente ?


Obrigada !

[]´s


GOSTEI 0
Titanius

Titanius

27/06/2007

Olá Bruno, eu não utilizo como parâmetro, utilizo como TField mesmo.. igualzinho como você faz no seu exemplo...

Disse isso do parametro por causa do erro, o que me levou a crer nisso.


Percebi o seguinte.. qualquer campo BLOB não está funcionando, mesmo o de texto.

Agora me veio a seguinte idéia... antes funcionava perfeitamente... agora depois que instalei a versão Delphi 2007 é que começou este problema. Será que o D2007 não substituiu alguma DLL do DBX que o está deixando incompatível com o Firebird 2.0?

[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

Lugar de imagem é no banco :D

é mais rapido, seguro e fácil :D

Só tome cuidado em criar tabelas separadas para armazenar as imagens, por exemplo se vc tem a tabela de clientes, tera tb a tabela de clientes_imagens ;)


GOSTEI 0
Renatacoimbra

Renatacoimbra

27/06/2007

01 - O Banco não cresce muito com as imagens ?
02 - Qual formato vc salva ?
03 - Vc usa alguma técnica especial para salvar essas imagens ?


[]´s


GOSTEI 0
Titanius

Titanius

27/06/2007

Ah.. só pra adicionar...

Tenho D7, BDS2006 e D2007 tudo na mesma máquina, pode ser conflito?

[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

Todas as minha aplicacoes estao funcionando perfeito com D2007.

Lembrando q para usar DBX 4 com FB 2.0 tem q usar driver especifico, e nao o do Interbase, pois é incompativel com ele.

Dai o erro nao é do Delphi, mas sim do Driver, lembrando q hj tds as minhas aplicaçoes de missao critica como as de imagem, estao usadno InterBase 2007.

Esta e a unica diferenca.

Se bem q tenho um cliente grande usando com FB 1.5 e td lhe vai bem tb.

teriamos q testar pra saber.

Mas blob no D2007 funciona beleza, a ver do meu exemplo.


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

eu tb tenho D7, 2006 e 2007 na minha maquina e nao ha conflito nenhum entre nada.


GOSTEI 0
Titanius

Titanius

27/06/2007

Todas as minha aplicacoes estao funcionando perfeito com D2007. Lembrando q para usar DBX 4 com FB 2.0 tem q usar driver especifico, e nao o do Interbase, pois é incompativel com ele. Dai o erro nao é do Delphi, mas sim do Driver, lembrando q hj tds as minhas aplicaçoes de missao critica como as de imagem, estao usadno InterBase 2007. Esta e a unica diferenca. Se bem q tenho um cliente grande usando com FB 1.5 e td lhe vai bem tb. teriamos q testar pra saber. Mas blob no D2007 funciona beleza, a ver do meu exemplo.


Bruno, tem certeza disso?

Realmente o D2007 com driver padrão do DBX não é compatível com o Firebird 2.0?

Se for, o problema está aí então.. :(

[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

Sim o Driver do interbase do DBX4 nao e compativel com FB 2.0, como o DBX e uma framework, temos q usar o driver especifico pra ele.

Realmente o prblema pode estar ai.

Tem o driver da corelab
e da http://www.upscene.com
http://blog.upscene.com/martijn/

--

Com relacao a imagens no banco, eu as armazeno diretamente em campos do tipo blob binary.

mais informaçoes vc pode baixar o meu exempo do borcon 2006 no meu link de dwonalods gratuitos(abaixo da minha assinatura), no cadastro de clientes trabalho com imagens.


GOSTEI 0
Titanius

Titanius

27/06/2007

Vixi.. :roll: então é isso...

Cara.. qual a versão do delphi é compativel? Delphi 7 ou BDS2006?


[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

acredito q nenhuma, pois foram feitas muitas alteracoes.

Mas meus amigos me relatam q estao usando bem o driver do DBX 3(D2006) com FB 2.0.

Mas de boa.. pega um driver especifico do FB 2 e usa com DBX 4, /e mto melhor.

agente já sabia que naturalmente teriamos essa separação de equivalencia, até por conta dos recursos e evolucao de cada um indivudualmente.

E ja deve ter outros driver para FB disponiveis tb.


GOSTEI 0
Titanius

Titanius

27/06/2007

Infelizmente não posso comprar o driver agora... e o gratuito que conheço o UIB somente para 1.5

Mas se pelo BDS2006 eu consigo, vou usar ele mesmo.. eu tinha ele, mas nao sabia se era do BDS2006 ou do Delphi7...

[]s


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

Cara, provavelment o UIB deve funcionar o DBX 4..

vc ja tentou?


GOSTEI 0
Titanius

Titanius

27/06/2007

Cara, provavelment o UIB deve funcionar o DBX 4.. vc ja tentou?


Pode até funcionar, mas quando eu usava ele no BDS2006, era muito instável... acabei nunca mais usando ele..

[]s


GOSTEI 0
Ademardevmedia

Ademardevmedia

27/06/2007

Boa tarde,
Gostria de contriuir e também de solicitar ajuda.

Eu baixei o DBX 4 para corrigir o problema com os campos BLOBs e agora tá dando problema com os campos numéricos adicionados nos ClientDataSet ´Type mismatch for field <nome_do_campo> expecting: FMTbcdfield actual: Float´

Não sei mais o que fazer, tô quase desistindo

Ademar


GOSTEI 0
Brunolspp

Brunolspp

27/06/2007

qual o tipo de dados no banco q isto ocorre, acredito q se vc remover o field e adiciona-lo novamente ira funcionar


GOSTEI 0
Ademardevmedia

Ademardevmedia

27/06/2007

Já fiz isso, removi e adicionei novamente os campos e não adiantou.

Os campos são NUMERIC (14,2)

Ademar


GOSTEI 0
POSTAR