JavaFree.org | RubyOnBr.org

Merge de cosultas

Acompanhar Merge de cosultas 4 posts, 4 participantes

Avatar Kirk Patrick 65 posts

Boa dia a todos!
Estou me deparando com a seguinte situação:

Tenho uma tabela chamada INVENTARIOS e outra chamada MOVIMENTAÇÕES

A minha tabela INVENTÁRIOS guarda uma posição consolidada do meu cliente por mês, ou seja, o saldo dele a cada 30 dias e a minha tabela MOVIMENTAÇÕES guarda as movimentações de entrada e saída feitas por aquele cliente diariamente.

Eu estou tendo dificuldades em casar as MOVIMENTAÇÕES com o INVENTARIO. Pois eu preciso pegar todas as movimentações daquele cliente dentro de uma data e deduzir essas movimentações do saldo anterior do INVENTARIO, para gerar um saldo atual. E não estou sabendo como fazer isso da forma correta.

Qualquer dúvida ou esclarecimento vai ajudar muito.

 
A013c064de659bbff814eb1f4410446b?s=80 Clovis 778 posts

Seu Problema é na lógica ou na montagem da consulta?

 
Avatar Fernando Luizao 402 posts

Imagino que seja algo como

class Inventario < AR::Base
  def saldo_atual(alguma_data, cliente_id)
    #pego as movimentacoes no periodo
    m = Movimentacao.find :all, :conditions => {:data => alguma_data..Date.today, :cliente_id => cliente_id}
    #pego o saldo anterior e subtraio das movimentacoes
    ... (nao sei como esta sua logica)
  end
end
 
Avatar Rondy 65 posts

Kirk, se esse inventário for somente o saldo em tal mês, não ficaria melhor ter um método tipo o do Fernando

def saldo_em(ano=Time.now.year, mes=Time.now.month)
...
end

na classe Cliente?

(Inventário não seria uma entidade nesse caso)