Fórum master/detail com clientdataset #46654

13/09/2004

0

fiz a ligação de 2 clientdatasets com 2 ibquery 1 para cada e 2 datasetprovider 1 para cada e a ligação master/detail pelo mastersource do clientdataset que é detail e na hora de abrir o clientdataset detail ele dá o seguinte erro:´XSQLDA index out of range´.o qeu fiz de errado?


Tap_pedroso

Tap_pedroso

Responder

Posts

13/09/2004

Afarias

Nesta configuração, o ibquery do ´detalhe´ deve possuir um SQL do tipo::

select * from tabela where campo_ref=:campo_chave

(o parâmentro ´campo_chave´ deve ter o mesmo nome do campo chave na tabela mestre)

obs:: *talvês* seja necessário tb vc clicar com o botão direito no CDS ´detalhe´ e selecionar a opção ´Fetch Params´


T+


Responder

Gostei + 0

14/09/2004

Tap_pedroso

1ª porque é melhor usar ibquery ligadas ao datasetprovider do que uma ibtable ou ibdataset?

2ª para fazer relações master/detail o melhor é usar o clientdataset mesmo ou tem algum outro componente para que fique melhor?

obrigado.


Responder

Gostei + 0

14/09/2004

Afarias

|1ª porque é melhor usar ibquery ligadas ao datasetprovider do que uma
|ibtable ou ibdataset?

a) NUNCA se deve usar TABLES com ou sem CDS

b) como a única função do DataSet (IBQuery ou IBDataSet) quando usado em conjunto com CDSs é a seleção de registros, o IBQuery é mais q suficiente (mais simples) -- mas, a não ser pelo fato do IBQuery permitir o acesso a parâmetros em tempo de projeto, não há diferença entre seu uso ou do IBDataSet.


|2ª para fazer relações master/detail o melhor é usar o clientdataset
|mesmo ou tem algum outro componente para que fique melhor?

A questão não é componente melhor -- ou vc usa CDS ou não. Uma vez q optou pelo seu uso, é importante lembrar q a forma padrão de construir ´mestre/detalhe´ com CDS é por meio de tabelas aninhadas (nested datasets)

Entretanto este ´método padrão´ não é sempre aplicável as nossas necessidades, por isso, em muitas situações é interessante sim implementar mestre/detalhe de outras formas, a exemplo desta que foi descrita na mensagem inicial.


T+


Responder

Gostei + 0

14/09/2004

Tap_pedroso

eu gostei muito de utilizar o cmponente ibdataset eu poderia usa-lo em master/detail(ex:modulo de venda/itens) e colocar (select * from tabela where campo_ref=:campo_chave) no ibdataset detail.será que fica bom.


Responder

Gostei + 0

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

Aceitar