Fórum Problemas com o CDS em 3 Camadas #282245

19/05/2005

0

Olá, estou tendo o seguinte problema:

Tenho dois SQLDataSet, tbPedido e TbItensPedido, que deveria ser mestre detalhes, porem não consigo fazer de jeito nenhum isso...

Tentei o seguinte, coloquei no meu DataSetProvider, o AllowCommandText como True nos dois, aí eu dou um select no meu ClientDataSet no cliente, ou seja, modifico o sql em runtime, e ele me traz beleza os meus pedidos e itens..

o meu problema:

1- Começou a dar o erro: no key found, aih fui lah no ProviderFlags, e coloquei como rue o InKey dos meus campos PK do Banco...
Beleza funcionou...

Agora meu maior erro:

Meus cdsPedido.Delete, cdsInsert, cdsEdit... nada funciona, dou o ApplyUpdates(0) e não me retorna err nenhum, inclusive coloquei o ReconcileErrorDialog e nada... sem erros...´porem nnao acontece nada no banco, nao altera, nao deleta...

eis minha questao, se alguem puder me ajudar, agradeceria muito...


[]s
Fellipe H.


Titanius

Titanius

Responder

Posts

19/05/2005

Kotho

Cara... calma... :lol:

1) Mestre/Detalhe ->
Coloque um SQLQuery para ser o Master -> SQLMaster //prefiro Query, pois tenho a possibilidade de filtrar com WHERE
  no SQL coloque SELECT * FROM PEDIDO

Coloque um SQLQuery para ser o Detail -> SQLDetail
  no SQL coloque SELECT * FROM ITEMPEDIDO WHERE NRPEDIDO = :NRPEDIDO //o nome do parâmetro tem que ser o mesmo nome do campo na tabela Master
  no DataSource coloque LNKMaster

Coloque um DataSource para ser um link -> LNKMaster
  no DataSet coloque SQLMaster

NA PARTE CLIENTE
Coloque um ClientDataSet para ser o Master -> CDSMaster
  adicione todos os Fields... irá aparecer, no final, um do tipo TDataSetField

Coloque um ClientDataSet para ser o Detail -> CDSDetail
  no DataSetField coloque o nome do field citado acima.


2) o que você colocou em OnReconcilieError...


Responder

Gostei + 0

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

Aceitar