Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Galera, visualizei um post relacionado a isso mas não encontrei uma forma que pudesse resolver meu problema.
Vejam se vocês podem me ajudar.
Fiz uma form que traz o balanço geral das contas bancárias e gastos (cash flow), o cliente me pediu para que nos totais de cada plano de contas contenha o saldo anterior do periodo.
Tentei aproveitar os exemplos dados aqui no forum mas não consegui, estou tendo dificuldades para selecionar o intervalo de data.
Então segue o que eu preciso fazer:
Tenho uma tabela chamada Transactions (Onde tem toda a transação entre contas), nesta tabela tenho os campo Data (date) e o campo amount (valores de todos os debitos e créditos), que são os campos que preciso usar.
Preciso mostrar a soma do mês anterior ao que está atualmente, e é ai que eu estou me enrolando todo.
Tenho que fazer o sistema entender a data atual, voltar no mês anterior e fazer a soma dele todo, (Lembrando que tem meses de 31 dias, 30 dias e 28 dias(fevereiro)), como posso fazer isso?
Aguardo ajuda de vocês!
Muito Obrigado.
Em alguns Sistemas contabeis se tem tabelas que guardam os saldos das contas nos fechamentos mensais.
Nao sei a estrutura do seu, nem a complexidade do rel., mas tente :
Montar um rascunho do relatorio com seus campos
Ver como obter cada valor e de que tabela
Alguns rels mais complexos sao obtidos com o uso de functions ou se montando tabelas temporarias
Ok... Muito obrigado pessoal.
Foi resolvido com a Função -1 Month.
Dá uma olhada nas funções de data neste link (http://ftp.nchu.edu.tw/MySQL/doc/refman/4.1/pt/date-and-time-functions.html).
select adddate(sysdate(), interval -1 month )
Você pode adicionar ou decrementar um ano/mês/dia/hora/segundo colocando um valor negativo ou positivo.
Para o último dia do mês :
select LAST_DAY('sysdate')
Para o primeiro dia do mês pode fazer o seguinte:
select adddate(last_day(adddate(sysdate(), interval -1 month )), interval +1 day)
você pega o último dia do mês anterior ao que você quer e adiciona mais um dia.
É só dar uma olhada nas funções de data e hora do mysql que você resolve fácil o problema.
Espero ter ajudado !