Fórum Erro ao grava dados Migração BDS2006 - RAD2009 #372715

24/07/2009

0

Bom dia a Todos,

Estou tentando migra o meu projeto para 2009, mas estou tendo problema com a gravação dos dados quando a query tem inner join.

Quando eu copilo a aplicação Servidora no 2006 e o cliente no 2009 funciona, quando copilo Servidor/Cliente 2009 apresenta erro.

Exemplo:
SELECT
ST_SOLICITACAOCOMPRA.NUM_SOLICITACAOCOMPRA,
ST_SOLICITACAOCOMPRA.NUM_DEPARTAMENTO,
ST_SOLICITACAOCOMPRA.NUM_EMPRESA,
ST_SOLICITACAOCOMPRA.NUM_USUARIO,
ST_SOLICITACAOCOMPRA.COD_SOLICITACAOCOMPRA,
ST_SOLICITACAOCOMPRA.DAT_SOLICITACAOCOMPRA,
ST_SOLICITACAOCOMPRA.HOR_SOLICITACAOCOMPRA,
ST_SOLICITACAOCOMPRA.DSC_OBSERVACAO,
ST_DEPARTAMENTO.DSC_DEPARTAMENTO,
ST_DEPARTAMENTO.DSC_RESPONSAVEL
FROM
ST_SOLICITACAOCOMPRA
INNER JOIN ST_DEPARTAMENTO ON
(ST_SOLICITACAOCOMPRA.NUM_DEPARTAMENTO =
ST_DEPARTAMENTO.NUM_DEPARTAMENTO)

Os ProviderFlags estão configurados de forma correta tanto no SqlQuery como no ClientDataSet;

coloque no cldsPrincipalReconcileError esta linha:
Action := HandleReconcileError(dataset, UpdateKind, E);

e a mensagem que aparece é essa:
[ODBC Firebird Driver][Firebird]Dynamic SQL Error
SQL error code = -206
Column unknown
DSC_DEPARTAMENTO
At line 2, column 140

a versão do meu firebird é: 2.0.0.12748
e do meu Drive odbc é: 2.0

Desde já agradeço

Silvio Coelho


Minervasoft

Minervasoft

Responder

Posts

24/07/2009

Osocram

pela mensagem
vc deve ter setado os campos
ST_DEPARTAMENTO.DSC_DEPARTAMENTO,
ST_DEPARTAMENTO.DSC_RESPONSAVEL
como InUpdate e InWhere tira isso deles.
e veja se no evento GetTableName do DataSetProvider vc esta passando a Tabela em maiusculo.


Responder

Gostei + 0

24/07/2009

.lg.

Completando um arrisque:

Esta coluna existe?
[color=blue:42cc0e6f85]DSC_DEPARTAMENTO[/color:42cc0e6f85]
O que entendi do erro é: Essa coluna não existe. Simplismente é o que me veio em pensamento.


Responder

Gostei + 0

24/07/2009

Minervasoft

pela mensagem vc deve ter setado os campos ST_DEPARTAMENTO.DSC_DEPARTAMENTO, ST_DEPARTAMENTO.DSC_RESPONSAVEL como InUpdate e InWhere tira isso deles. e veja se no evento GetTableName do DataSetProvider vc esta passando a Tabela em maiusculo.


- No ProviderFlags está desabilitado todas as opções para esses 2 campos
- No GetTableName não estou passando nada.


Responder

Gostei + 0

24/07/2009

Minervasoft

Completando um arrisque: Esta coluna existe? [color=blue:ac0af39fe9]DSC_DEPARTAMENTO[/color:ac0af39fe9] O que entendi do erro é: Essa coluna não existe. Simplismente é o que me veio em pensamento.


DSC_DEPARTAMENTO e DSC_RESPONSAVEL existe sim, podendo ser verificado na query do primeiro topico.

a minha dificuldade de enteder é que se eu copilar a plicação servidor no BDS 2006 e a aplicação cliente no RAD 2009 funciona perfeitamente


Responder

Gostei + 0

24/07/2009

Osocram

Tenta fazer um teste amigo

coloca isso no GetTableName
ST_SOLICITACAOCOMPRA

so p ver se isso funciona.
[quote:aa59fd5616=´osocram´]pela mensagem vc deve ter setado os campos ST_DEPARTAMENTO.DSC_DEPARTAMENTO, ST_DEPARTAMENTO.DSC_RESPONSAVEL como InUpdate e InWhere tira isso deles. e veja se no evento GetTableName do DataSetProvider vc esta passando a Tabela em maiusculo.


- No ProviderFlags está desabilitado todas as opções para esses 2 campos
- No GetTableName não estou passando nada.[/quote:aa59fd5616]


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar