GARANTIR DESCONTO

Fórum DBExpress #188061

11/10/2003

0

Preciso de algum manual sobre este componente pois não consigo usá-lo. Por exemplo toda vez que ligo um DBLookUpComboBox em SqlQuery, aparece um monte de vez o último campo da tabela e ainda da o Erro :
EDataBaseError with message ´Query1:Operation not allowed on unidirectional DataSet: Process Stoped.

Por favor se alguém puder me ajudar Agradeço

Grato


Ecarvalhox

Ecarvalhox

Responder

Posts

11/10/2003

Vinicius2k

Colega,
http://www.clubedelphi.com.br/apostilas/DBExpress.zip

lhe adianto que este erro é ´normal´, digamos assim... DataSets SQL não permitem navegação bidirecional, exigida por um DBGrid, ou qualquer componente DataWare, por exemplo...
para fazer uso de navegação bidirecional vc precisa interceder com mais dois componentes o caminho...

a sua estrutura deve estar assim :
SQLConnection -> SQLDataSet -> DataSource -> componentes DataWare.

vc precisa transformá-la para :
SQLConnection -> SQLDataSet -> [color=red:4dde8be141]DataSetProvider[/color:4dde8be141] -> [color=red:4dde8be141]ClientDataSet[/color:4dde8be141] -> DataSource -> componentes DataWare...

para fazer uso destes componentes adicionais :
1 - No DataSetProvider. Ajuste a propriedade DataSet para o nome do seu DataSet , este pode ser um SQLDataSet, uma SQLQuery...
2 - No ClientDataSet ajuste a propriedade ´ProviderName´ para o nome no seu DataSetProvider...
3 - No DataSource ajuste a propriedade DataSet para o nome do seu ClientDataSet...

nesta estrutura o provider faz cache do seu dataset e vc tem, então, a navegação bidirecional de que precisa, pois vc está navegando em uma ´imagem´ do DataSet e não nele propriamente dito...

se vc está utilizando DBEdits, DBCombos e etc, para gravar os dados de inserção, atualização ou deleção utilize o método ´ApplyUpdates´ do ClientDataSet... note que isso envolve alguns cuidados e sugiro que estude um pouco mais sobre esta estrutura ou tire mais dúvidas aqui no fórum...

pessoalmente, eu não uso componentes DataWare (por favor amigos não me crucifiquem !), uso o Provider e o ClientDataSet apenas para consultas, meus inserts, updates e deletes são todos feitos com SQL ´duro´...

espero ter ajudado...


Responder

Gostei + 0

11/10/2003

Pithon

Quando se usa o MSSQL em rede, deve se colocar o client do MSSQL nas estaçòes de trabalho ?


Responder

Gostei + 0

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

Aceitar