Fórum ClientDataSet #231437

11/05/2004

0

Bonde, o problema é o seguinte:
Tenho um CDS que lista pra mim as Ordem de Servico, desse CDS é ligado um DataSource.
Tenho um outro CDS que lista pra mim os Trabalhadores das Ordem de Serviços, que desse CDS tambem tem um DS.
O CDS de ordem de serviço posiciona em um determinado registro na tabela, com isso liguei o DS da Ordem de serviço direto no meu CDs de Trabalhadores, fazendo um Mestre/Detalhe. Ate entao tudo bem!Tudo funciona Bunitinho!

O problema é que, em um campo da tabelas de Trabalhadores eu armazeno as horas trabalhadas, e como o CDS me da essa possibilidade com o campo Aggregate, resolvi somar todas as horas que os Trabalhadores trabalharam em uma determinada Ordem de Serviço. Só que o resultado que ele retorna é soma de todos os registros indepedente do Mestre/Detalhe.

Ou seja, ele soma todos os registros da tabela e nao o da Ordem de Serviço selecionada.

Alguem sabe como somar apenas os valores de horas trabalhadas na tabela Trabalhadores ,que aparecerem no Metre/Detalhe?


Fred_montanha

Fred_montanha

Responder

Posts

11/05/2004

Rômulo Barros

Caro amigo: o campo agregado deverá ser criado dentro do Detail, e não do Master. Outra opção seria utilizar um campo calculado, já que esta soma é apenas para exibição dos dados. como vc já tem os ponteiros marcados nos registros, faz um sql com SUM(CAMPO), resolvendo o caso(q é o que vc está fazendo no agregado SUM()) 8)


Responder

Gostei + 0

11/05/2004

Fred_montanha

Vc esta certo amigo!So que EU SEI que o Aggregate tem de ser no Detalhe, e é exatamente onde ele esta.

O campo Calculado é uma boa alternativa, mas por que o Aggregate nao ta funcionando com o Mestre/Detalhe


Responder

Gostei + 0

11/05/2004

Fred_montanha

e ai povo?


Responder

Gostei + 0

12/05/2004

Fred_montanha

Niguem , niguem?


Responder

Gostei + 0

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

Aceitar