Array
(
)

Cannot modify a ready-only dataset...

Horus
   - 09 set 2004

Tenho um form, com um ibdataset e uma ibquery. Porque não estou conseguindo inserir, modificar ou trabalhar com os dados da ibquery pois aparece a mensagem do título.
O que está havendo na minha aplicação?

Agradeço a atenção.


Jc_analista
   - 09 set 2004

vc tem que colocar um objeto updatesql


Balceiro
   - 09 set 2004

cara pode parecer idiota mas seu banco de dados não está como somente leitura?

isso acontecia quando eu usava bd paradox, quando eu copiava o sistema pro cd e depois copiava para a máquina do usuário as tabelas ficavam somente leitura, ai aparecia exatamente essa mensagem.


Horus
   - 09 set 2004

O pior é que não está como somente leitura. Olhei isso também. Já os outros módulos da aplicação, como o cadastro dos clientes ele funciona normalmente.

É que é assim: este é um formulário de vendas e tenho o ibdataset1 como o de dados principais da venda. Este que estou querendo manipular é o de dados dos produtos.


Lucas Silva
   - 09 set 2004


Citação:
vc tem que colocar um objeto updatesql

Complementando....
Olhe na propriedade updateObject se está apontando para um updateSQL


Horus
   - 09 set 2004

Coloquei o objeto updatesql mas aí deu outro erro:

attempted to update a read-only column!


Lucas Silva
   - 09 set 2004


Citação:
Coloquei o objeto updatesql mas aí deu outro erro:

attempted to update a read-only column!

Dentre estes campos, tem algum campo calculado?


Horus
   - 09 set 2004

Coloquei o objeto updatesql mas aí deu outro erro:

attempted to update a read-only column!

Mas, se eu colocar uma IBTable ele dá certo.

Por que eu não consigo trabalhar com a IBQuery ou até mesmo com outro IBDataSet?


Horus
   - 09 set 2004

Sim. Tem um campo calculado. O campo do preco total:

quantidade * preco_unitario


Pode ter alguma coisa haver???


Gandalf.nho
   - 09 set 2004

Tu não deve incluir campos calculados nas SQLs do IbUpdateSQL.


Horus
   - 09 set 2004

Sei que é coisa de principiante mas, preciso perguntar:

- Por que tenho que ter um updateSQL para a minha Query???

Eu não posso utilizar 2 ibdataset num mesmo formulário???


Lucas Silva
   - 09 set 2004


Citação:
Tu não deve incluir campos calculados nas SQLs do IbUpdateSQL.

Isso mesmo...
Monte o SQL do update sem este campo....
Ai vai dar certo.....


Gandalf.nho
   - 09 set 2004

Claro que tu pode usar mais de 1 IBDataSet no mesmo formulário. E o IBQuery é read-only, só se tornando próprio para edição com a ajuda do IBUpdateSQL.


Horus
   - 10 set 2004

Gostaria de agradecer a colaboração e atenção daqueles que me ajudaram.

gandalf.nho
jc_analista
Lucas Alves Silva
balceiro

Deu tudo certo.
Foi só colocar um UpdateSql e retirar dele o campo calculado.

Mais uma vez obrigado.