Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

  • 0
gildo alves

controle financeiro

Pergunta

olá galera, seguinte eu estou fazendo um controle financeiro  em PHP e quero fazer um fechamento de mes EX: fevereiro fechou no valor TAL, e março inicia com o valor de 0,00 ai começar a contar o valor ainda.

se alguem puder me ajudar ficarie grato.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 respostas a esta questão

Recommended Posts

Defina melhor seu problema , que tabelas você já tem (modelo dados) , que ambiente está usando etc.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola galera fiz uma pergunta a alguns dias atras mas acho que eu não soube me expressar direito, estou criando um sistema de controle financeiro de obra, e eu fiz as tabelas com os nomes de 

receita_valor_obra, receitaLiquida, receitaBruta, nomeMes, despesa

 

exemplo

receita_valor_obra = 1.500,00 na primeira semana

 

receita_valor_obra = 2.358,00 na segunda semana

 

receita_valor_obra = 4.125,08 na terceira semana

 

receita_valor_obra =  3.135,25 na quarta semana

 

JÁ CONSEGUI SOMAR OS VALORES VINDO DO POST DAS SEMANAS 

 

receitaBruta           = 11.118,33

despesa                  = 1.568,62

receitaLiquida       = 9.549,71

nomeMes               = "Fevereiro"

 

Nisso já consegui subtrair a receitaBruta e despesa . E já  tenho o valor da receitaLiquida  o nome do més ,já consegui pegar do banco o valor em str_replace também. a minha duvida é ! eu preciso fechar o mês de atual, gravar no banco de dados, e começar o outro Mês com com o valor de 0,00  para dai começar a soma novamente os valores. 

se alguém puder ajudar ficarei muito grato 

 

Lembrando que a linguagem e PHP, e também é Procedoral 

   

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por jardeldint
      Olá pessoal!
      Acredito que alguns daqui do grupo conhece o sistema de Ordens de Serviço MAPOS, que foi desenvolvido em CodeIgniter.

      Estou fazendo uma alteração nele, para que quando o usuário for receber uma parte de um pagamento do cliente, o restante apareça no cadastro de cliente. Por exemplo: O Cliente X tinha um débito de R$ 500,00. Más no dia Y ele pagou R$ 100,00, restando então R$ 400,00.

      No Models do Financeiro, fiz essa alteração abaixo na linha do "function edit":

      <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

      class Financeiro_model extends CI_Model {

      function __construct() {
      parent::__construct();
      }


      function get($table,$fields,$where='',$perpage=0,$start=0,$one=false,$array='array'){

      $this->db->select($fields);
      $this->db->from($table);
      $this->db->order_by('data_vencimento', 'asc');
      $this->db->limit($perpage,$start);
      if($where){
      $this->db->where($where);
      }

      $query = $this->db->get();

      $result = !$one ? $query->result() : $query->row();
      return $result;
      }


      function getById($id){
      $this->db->where('idClientes',$id);
      $this->db->limit(1);
      return $this->db->get('clientes')->row();
      }

      function add($table,$data){
      $this->db->insert($table, $data);
      if ($this->db->affected_rows() == '1')
      {
      return TRUE;
      }

      return FALSE;
      }

      function edit($table,$data,$fieldID,$ID){
      $this->db->select('clientes.saldoDevedor, lancamentos.clientes_id, lancamentos.valor, lancamentos.idLancamentos');
      $this->db->from('lancamentos,clientes');
      $this->db->where($fieldID,$ID);
      $this->db->update($table, $data);

      if ($this->db->affected_rows() >= 0)
      {
      return TRUE;
      }

      return FALSE;
      }



      function delete($table,$fieldID,$ID){
      $this->db->where($fieldID,$ID);
      $this->db->delete($table);
      if ($this->db->affected_rows() == '1')
      {
      return TRUE;
      }

      return FALSE;
      }

      function count($table) {
      return $this->db->count_all($table);
      }

      }


      E no Views do lançamento criei esse campo, dentro do Modal de Editar Lançamento:

      <div class="span4" style="margin-left: 0">
      <label for="valor-pagar">Valor a Receber/Pagar</label>
      <input type="text" name="tipoPagar" value="" />
      <input type="hidden" id="Pagar" name="idPagar" value="" />
      </div>
      E no Controlers na função Editar, alterei com essas informações:
      Eu so inseri esses comandos que vocês odem olhar no codigo abaixo:

      public function editar(){
      if(!$this->permission->
      checkPermission($this->session->userdata('permissao'),'eLancamento')){
      $this->session->set_flashdata('error','Você não tem permissão para editar lançamentos.');
      redirect(base_url());
      }

      $this->load->library('form_validation');
      $this->data['custom_error'] = '';
      $urlAtual = $this->input->post('urlAtual');

      $this->form_validation->set_rules('descricao', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('fornecedor', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('valor', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('vencimento', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('pagamento', '', 'trim|xss_clean');

      if ($this->form_validation->run() == false) {
      $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
      } else {

      $vencimento = $this->input->post('vencimento');
      $pagamento = $this->input->post('pagamento');

      try {

      $vencimento = explode('/', $vencimento);
      $vencimento = $vencimento[2].'-'.$vencimento[1].'-'.$vencimento[0];

      $pagamento = explode('/', $pagamento);
      $pagamento = $pagamento[2].'-'.$pagamento[1].'-'.$pagamento[0];

      } catch (Exception $e) {
      $vencimento = date('Y/m/d');
      }


      $capturaValorTotal = $this->input->post('valor');
      $capturaValorPagar = $this->input->post('valor-pagar');

      $valorDevido = $capturaValorTotal - $capturaValorPagar;

      $inserindoBanco = "INSERT INTO `clientes` set `saldoDevedor`='".$valorDevido."'";

      $executandoQuery = mysql_query($inserindoBanco);


      $data = array(
      'descricao' => $this->input->post('descricao'),
      'valor' => $this->input->post('valor'),
      'valor-pagar' => $this->input->post('valor-pagar'),
      'data_vencimento' => $vencimento,
      'data_pagamento' => $pagamento,
      'baixado' => $this->input->post('pago'),
      'cliente_fornecedor' => $this->input->post('fornecedor'),
      'forma_pgto' => $this->input->post('formaPgto'),
      'numCheque' => $this->input->post('numCheque'),
      'numCartao' => $this->input->post('numCartao'),
      'valCartao' => $this->input->post('valCartao'),
      'tipo' => $this->input->post('tipo')
      );





      if ($this->financeiro_model->edit('lancamentos',$data,'idLancamentos',$this->input->post('id')) == TRUE) {
      $this->session->set_flashdata('success','lançamento editado com sucesso!');
      redirect($urlAtual);
      } else {
      $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento!');
      redirect($urlAtual);
      }
      }

      $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento.');
      redirect($urlAtual);

      $data = array(
      'descricao' => $this->input->post('descricao'),
      'valor' => $this->input->post('valor'),
      'data_vencimento' => $this->input->post('vencimento'),
      'data_pagamento' => $this->input->post('pagamento'),
      'baixado' => $this->input->post('pago'),
      'cliente_fornecedor' => set_value('fornecedor'),
      'forma_pgto' => $this->input->post('formaPgto'),
      'tipo' => $this->input->post('tipo')
      );
      print_r($data);

      }
      public function editar(){
      if(!$this->permission->checkPermission($this->session->userdata('permissao'),'eLancamento')){
      $this->session->set_flashdata('error','Você não tem permissão para editar lançamentos.');
      redirect(base_url());
      }

      $this->load->library('form_validation');
      $this->data['custom_error'] = '';
      $urlAtual = $this->input->post('urlAtual');

      $this->form_validation->set_rules('descricao', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('fornecedor', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('valor', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('vencimento', '', 'trim|required|xss_clean');
      $this->form_validation->set_rules('pagamento', '', 'trim|xss_clean');

      if ($this->form_validation->run() == false) {
      $this->data['custom_error'] = (validation_errors() ? '<div class="form_error">' . validation_errors() . '</div>' : false);
      } else {

      $vencimento = $this->input->post('vencimento');
      $pagamento = $this->input->post('pagamento');

      try {

      $vencimento = explode('/', $vencimento);
      $vencimento = $vencimento[2].'-'.$vencimento[1].'-'.$vencimento[0];

      $pagamento = explode('/', $pagamento);
      $pagamento = $pagamento[2].'-'.$pagamento[1].'-'.$pagamento[0];

      } catch (Exception $e) {
      $vencimento = date('Y/m/d');
      }


      $capturaValorTotal = $this->input->post('valor');
      $capturaValorPagar = $this->input->post('valor-pagar');

      $valorDevido = $capturaValorTotal - $capturaValorPagar;

      $inserindoBanco = "INSERT INTO `clientes` set `saldoDevedor`='".$valorDevido."'";

      $executandoQuery = mysql_query($inserindoBanco);


      $data = array(
      'descricao' => $this->input->post('descricao'),
      'valor' => $this->input->post('valor'),
      'valor-pagar' => $this->input->post('valor-pagar'),
      'data_vencimento' => $vencimento,
      'data_pagamento' => $pagamento,
      'baixado' => $this->input->post('pago'),
      'cliente_fornecedor' => $this->input->post('fornecedor'),
      'forma_pgto' => $this->input->post('formaPgto'),
      'numCheque' => $this->input->post('numCheque'),
      'numCartao' => $this->input->post('numCartao'),
      'valCartao' => $this->input->post('valCartao'),
      'tipo' => $this->input->post('tipo')
      );





      if ($this->financeiro_model->edit('lancamentos',$data,'idLancamentos',$this->input->post('id')) == TRUE) {
      $this->session->set_flashdata('success','lançamento editado com sucesso!');
      redirect($urlAtual);
      } else {
      $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento!');
      redirect($urlAtual);
      }
      }

      $this->session->set_flashdata('error','Ocorreu um erro ao tentar editar lançamento.');
      redirect($urlAtual);

      $data = array(
      'descricao' => $this->input->post('descricao'),
      'valor' => $this->input->post('valor'),
      'data_vencimento' => $this->input->post('vencimento'),
      'data_pagamento' => $this->input->post('pagamento'),
      'baixado' => $this->input->post('pago'),
      'cliente_fornecedor' => set_value('fornecedor'),
      'forma_pgto' => $this->input->post('formaPgto'),
      'tipo' => $this->input->post('tipo')
      );
      print_r($data);

      } O que eu não estou entendendo é onde esta ou onde estão os meus erros, pois não grava nada no Banco de Dados, sendo q eu criei na tablea clienes o campo saldoDevedor. E ainda por cima, quando faço o teste, utilizando o debito de cliente já existente, informo o valor que foi pago, e diz que foi alterando com sucesso, más na realidade nada acontece.
      Fico no aguardo se alguém puder me ajudar!
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.