Array
(
)

atualização de registro com chave composta

Programalista
   - 22 set 2004

Srs, na aplicação que estou desenvolvendo, tenho a seguinte situação: Na tabela de ´certificados´ eu insiro o codigo do produto e outros dados e na tabela ´itens_do_certificado´ são inseridos automaticamente as características do produto (comprimento, diâmetro etc...). Estes certificados são emitidos a cada vez que o produto é vendido, então eu tenho várias ocorrências das características do produto na tabela itens_do_certificado diferindo apenas o código do certificado, daí eu tenho na tabela ´itens_do_certificado´ uma ´chave composta´ criada pelo código do certificado e pelo código_da_característica_do_produto. Quando emito o certificado de um produto pela primeira vez, tudo funciona perfeitamente, mas quando emito pela segunda vez, eu não consigo alterar alguns dados das caracteristicas ( valor_minimo encontrado, valor_maximo encontrado), pois tais valores irão variar a cada certificado. O Delphi, em tempo de execução me retorna a seguinte mensagem: ´Update affected more than 1 record´. Na propriedade Options --> poAllowMultrecordUpdates, mudei o seu valor para ´true´, ai eu consigo fazer as alterações, nas características, mas esta alteração vai para todas as ocorrências desta característica na tabela ´itens_do_certificado´. Tal alteração só deve acontecer nos itens do certificado, digo nas características do produto do certificado corrente. Então mais uma vez, peço ajuda à comunidade ClubeDelphi para tentarmos resolver este problema.


Eduprp
   - 23 set 2004

Colega

Qual banco de dados e quais componentes de conexão você esta utilizando?

Eduardo M. Pereira


Programalista
   - 23 set 2004

Olá eduprp, estou usando Delphi7 + Firebird1.5. Os componentes são: sqldataset + datasetprovider + clientdataset, e para exibir no grid, uso sqlclientdataset.