Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) DSOMA - Access 2000 - 2 critérios


Coteco

Pergunta

Boa Tarde!

Pessoal, preciso montar uma soma acumulada de um banco de dados.

No banco de dados tenho as Informações: Data, Cod do Produto, Consumo

Eu preciso fazer um acumulado de consumo (Preciso que a resposta seja o acumulado dia a dia por produto) sendo que os critérios devem ser por Data e a soma acumulada só deve ser feita, caso o Cod do Produto seja o mesmo.

Segue Tabela Exemplo

Data Cod do Produto Consumo

01/01/08 AF5050 10

02/01/08 AF5050 5

01/01/08 AA1010 100

02/01/08 AA1010 500

Necessito que a tabela acima fique assim:

Data Cod do Produto Consumo Acumulado

01/01/08 AF5050 10 10

02/01/08 AF5050 5 15

01/01/08 AA1010 100 100

02/01/08 AA1010 500 600

Obrigado!!!

Editado por Coteco
Link para o comentário
Compartilhar em outros sites

10 respostass a esta questão

Posts Recomendados

  • 0

Tentei DSum("Consumo Acumulado","Tabela Exemplo","[data]<=#" & Format([data],"mm/dd/yyyy") & "#" and [cod produto] = [cod produto] )

Na forma que estou fazendo, ele soma tudo, não conseguindo fazer a soma por produto.

Se eu retirar o segundo critério, ele soma perfeitamente as datas....

Ou seja, meu problema é no segundo critério, onde devo fazer que a soma seja acumulada somente se o cod do produto for igual

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0
Faça duas expressões, uma consumo e outra pra acumulado

Desculpe, acho que não entendi a sua resposta ou você não entendeu minha dúvida...

O consumo é um dado e não é calculado... o que eu quero é somar o consumo de cada dia, caso o cod do produto seja o mesmo

Obrigado!

Link para o comentário
Compartilhar em outros sites

  • 0

O DSOMA num vai resolver o que você está querendo, na verdade você irá fazer uma consulta, mais ou menos assim:

select [data],sum([consumoAcumulado]) as AcumuladoData from tabelaExemplo group by [data];

faça as adaptações necessarias que irá funcionar ok!?

Link para o comentário
Compartilhar em outros sites

  • 0

MrMALJ

Não consegui fazer.... Coloquei um mdb no rapidshare, se você puder olhar eu agradeço....

Tem duas tabelas, onde 1_Tabela_teste contem os dados que tenho e a 2_Tabela_Resultado_Necessario contem o resultado que preciso obter....

Coloquei também uma Consulta Teste, que contém a consulta que fiz e não está funcinando....

Segue o Link do RapidShare

http://rapidshare.com/files/154580697/teste.mdb

Obrigado pela Ajuda!

Link para o comentário
Compartilhar em outros sites

  • 0

Extranho... mais constatei que de fato não funcionou, então ai está a expressão que vai fazer o desejado, substitua o código sql da consulta por este

SELECT a.Data, a.[Cod Produto], a.Consumo, (select sum([1_Tabela_teste].consumo) as Acumulado from 1_tabela_teste where a.data>= [1_tabela_teste].data and a.[cod produto] = [1_Tabela_Teste].[cod produto])

FROM 1_Tabela_Teste AS a

ORDER BY a.[cod produto], a.data;

Bom agora vou aguardar você dá o ok para que eu possa dar este post como resolvido.

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...