Jump to content

Soma de dados


eliok10
 Share

Recommended Posts

Boa noite, estou com um problema que à partida é básico mas não estou a conseguir resolver.

Estou a editar um relatório no Access, onde por trás desse relatório tem uma consulta que gera os resultados.

O que se passa é o seguinte:

A consulta vai buscar os nomes dos clientes, as vendas no ano, os custos no ano e a margem de lucro o ano.

Eu tenho que acrescentar um Total Geral, que soma todas as vendas de todos os registos, os custos e calcule a margem geral mediante o total de vendas de todos os clientes e de custos.

O problema é que quando eu faço p.ex: Sum(totvenda-ano) ele não me mostra o total de todas mas sim o total por linha, ou seja, por cliente.

Como eu faço para ele me somar todos os registos mesmo e não a soma por linha?

Obrigado

Link to comment
Share on other sites

Boa tarde, antes de mais obrigado pela resposta.

Por meios de consultas já consegui obter os totais que necessitava, contudo resta-me um problema:

Tenho que comparar estes totais com uma tabela que gera uns códigos, faço 2 LEFT JOINS e resulta, quando tento fazer o terceiro LEFT JOIN não consigo.

Aqui abaixo fica o código (que resulta) com 2 LEFT JOIN

FROM (teste LEFT JOIN taxas ON (left((teste.globalmrg),3)>=taxas.Margem) AND
(left((teste.globalmrg),3)<=taxas.Margem)) LEFT JOIN taxas2 ON (left((teste.somadesomademrg),3)>=taxas2.Margem) AND
(left((teste.somadesomademrg),3)<=taxas2.Margem);

Quando tento juntar ao código acima o 3º LEFT JOIN seguindo a mesma lógica:

FROM (teste LEFT JOIN taxas ON (left((teste.globalmrg),3)>=taxas.Margem) AND
(left((teste.globalmrg),3)<=taxas.Margem)) LEFT JOIN taxas2 ON (left((teste.somadesomademrg),3)>=taxas2.Margem) AND
(left((teste.somadesomademrg),3)<=taxas2.Margem) LEFT JOIN taxas3 ON (left((teste.somadesomademrg2),3)>=taxas3.Margem) AND
(left((teste.somadesomademrg2),3)<=taxas3.Margem) ;

Dá-me o erro (no access): Erro de sintaxe (operador em falta)

Já vi e revi e não encontro o problema.

Basta eu apagar uma condição de left join (seja a segunda ou a terceira) e ficar com 2 left join e ja funciona.

Se alguém me puder ajudar agradeço imenso..

Mil obrigados.

Edited by eliok10
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.