Exemplo n.º 1
0
        private void BaixaExtraMatPrima()
        {
            try
            {
                //Atualizando o Estoque dos Produtos Envasados
                MvEstoque      MvProducao = new MvEstoque();
                MvEstoqueItens MvItens    = new MvEstoqueItens();

                Controles.ControleEstoque ControleEstoque = new ControleEstoque();
                ControleEstoque.Controle = Controle;

                MvItens.Controle    = Controle;
                MvProducao.Controle = Controle;
                MvProducao.LerDados(0);

                //Gerando o Movimento Lanc. Produção
                DataSet TabPrd = new DataSet();
                TabPrd = Controle.ConsultaTabela("SELECT * FROM MapaProducaoProdutos WHERE QTDEEXTRA > 0 AND ID_MAPA=" + Mapa.IdMapa.ToString());
                if (TabPrd.Tables[0].Rows.Count > 0)
                {
                    MvProducao.LerDados(0);
                    MvProducao.TpMov        = "BMAPR";
                    MvProducao.Observacao   = "Movimento extra Gerado Automatico Pelo Sistema Ref. Mapa de Produção No." + string.Format("{0:D6}", Mapa.IdMapa);
                    MvProducao.Data         = Mapa.Data;
                    MvProducao.IdFilial     = FrmPrincipal.IdFilialConexao;
                    MvProducao.DtEmissao    = Mapa.Data;
                    MvProducao.DtEntSai     = Mapa.Data;
                    MvProducao.Documento    = "PRODUÇÂO AUT.";
                    MvProducao.NumDocumento = string.Format("{0:D6}", Mapa.IdMapa);
                    MvProducao.GravarDados();

                    for (int I = 0; I <= TabPrd.Tables[0].Rows.Count - 1; I++)
                    {
                        MvItens.LerDados(0);
                        MvItens.IdMov     = MvProducao.IdMov;
                        MvItens.IdProduto = int.Parse(TabPrd.Tables[0].Rows[I]["ID_PRODUTO"].ToString());
                        MvItens.Qtde      = decimal.Parse(TabPrd.Tables[0].Rows[I]["QtdeExtra"].ToString());
                        MvItens.GravarDados();
                    }
                }

                //Concluindo o Movimento de Produção
                SqlDataReader Tab;
                if (MvProducao.IdMov > 0)
                {
                    Tab = Controle.ConsultaSQL("SELECT * FROM MVESTOQUEITENS WHERE Id_Mov=" + MvProducao.IdMov.ToString());
                    ControleEstoque.MovimentoEstoque(Tab, 1, 2, false, MvProducao.TpMov, MvProducao.DtEntSai, MvProducao.IdFilial);
                    MvProducao.Concluir();
                }
                Mapa.Status = 1;
                Mapa.GravarDados();
                FrmPrincipal.RegistrarAuditoria(this.Text, Mapa.IdMapa, Mapa.IdProdProd.ToString(), 4, "Baixa Extra da Produção: " + LstProduto.SelectedText.ToString().Trim() + " Qtde: " + Mapa.Qtde.ToString());
            }
            catch
            {
                MessageBox.Show("Erro ao enviar o Mapa para Produção", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemplo n.º 2
0
        private void BtnConcluir_Click(object sender, EventArgs e)
        {
            if (StaFormEdicao)
            {
                MessageBox.Show("Cadastro do Mapa de Produção em edição", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
            else
            {
                if (Mapa.IdMapa > 0)
                {
                    if (Mapa.Status == 0)
                    {
                        MessageBox.Show("Mapa de Produção em Aberto", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                    if (Mapa.Status == 2)
                    {
                        MessageBox.Show("Mapa já Concluido", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return;
                    }
                }
                if (MessageBox.Show("Confirma a Conclusão Mapa para Produção", "Confirmação", MessageBoxButtons.YesNo) == DialogResult.Yes)
                {
                    BtnConcluir.Enabled = false;
                    Application.DoEvents();
                    //
                    try
                    {
                        //Atualizando o Estoque dos Produtos Envasados
                        MvEstoque      MvProducao = new MvEstoque();
                        MvEstoqueItens MvItens    = new MvEstoqueItens();

                        Controles.ControleEstoque ControleEstoque = new ControleEstoque();
                        ControleEstoque.Controle = Controle;

                        MvItens.Controle    = Controle;
                        MvProducao.Controle = Controle;
                        MvProducao.LerDados(0);

                        //Gerando o Movimento Lanc. Produção
                        DataSet TabPrd = new DataSet();
                        TabPrd = Controle.ConsultaTabela("SELECT * FROM MAPAPRODUCAOITENS WHERE ID_MAPA=" + Mapa.IdMapa.ToString());
                        if (TabPrd.Tables[0].Rows.Count > 0)
                        {
                            MvProducao.LerDados(0);
                            MvProducao.TpMov        = "ENTPR";
                            MvProducao.Observacao   = "Movimento Gerado Automatico Pelo Sistema Ref. Mapa de Produção No." + string.Format("{0:D6}", Mapa.IdMapa);
                            MvProducao.Data         = Mapa.Data;
                            MvProducao.IdFilial     = FrmPrincipal.IdFilialConexao;
                            MvProducao.DtEmissao    = Mapa.Data;
                            MvProducao.DtEntSai     = Mapa.Data;
                            MvProducao.Documento    = "PRODUÇÂO AUT.";
                            MvProducao.NumDocumento = string.Format("{0:D6}", Mapa.IdMapa);
                            MvProducao.GravarDados();

                            for (int I = 0; I <= TabPrd.Tables[0].Rows.Count - 1; I++)
                            {
                                MvItens.LerDados(0);
                                MvItens.IdMov     = MvProducao.IdMov;
                                MvItens.IdProduto = int.Parse(TabPrd.Tables[0].Rows[I]["ID_PRODUTO"].ToString());
                                MvItens.Qtde      = decimal.Parse(TabPrd.Tables[0].Rows[I]["Qtde"].ToString());
                                MvItens.GravarDados();
                            }
                        }

                        //Concluindo o Movimento de Produção
                        SqlDataReader Tab;
                        if (MvProducao.IdMov > 0)
                        {
                            Tab = Controle.ConsultaSQL("SELECT * FROM MVESTOQUEITENS WHERE Id_Mov=" + MvProducao.IdMov.ToString());
                            ControleEstoque.MovimentoEstoque(Tab, 1, 1, false, MvProducao.TpMov, MvProducao.DtEntSai, MvProducao.IdFilial);
                            MvProducao.Concluir();
                        }

                        BaixaExtraMatPrima();

                        Mapa.Status       = 2;
                        Mapa.IdMvMatPrima = MvProducao.IdMov;
                        Mapa.GravarDados();
                        FrmPrincipal.RegistrarAuditoria(this.Text, Mapa.IdMapa, Mapa.IdProdProd.ToString(), 5, "Concluir o Mapa de Produção");
                        PopularCampos(Mapa.IdMapa);
                        PopularGridItens();
                        PopularGridProd();
                        MessageBox.Show("Mapa de Produção Concluido", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                    catch
                    {
                        MessageBox.Show("Erro ao Concluir o Mapa para Produção", "Alerta", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                BtnConcluir.Enabled = true;
            }
        }
Exemplo n.º 3
0
        private void BtnConfirmar_Click(object sender, EventArgs e)
        {
            if (MvBalanco.Status == 1)
            {
                MessageBox.Show("Balanço já Concluido", "Informação", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return;
            }

            MvEstoque MvEntrada   = new MvEstoque();
            MvEstoque MvSaida     = new MvEstoque();
            MvEstoque LancBalanco = new MvEstoque();

            MvEstoqueItens EntradaItens = new MvEstoqueItens();
            MvEstoqueItens SaidaItens   = new MvEstoqueItens();
            MvEstoqueItens LancBalItens = new MvEstoqueItens();

            Controles.ControleEstoque ControleEstoque = new ControleEstoque();
            ControleEstoque.Controle = Controle;

            MvEntrada.Controle    = Controle;
            MvSaida.Controle      = Controle;
            LancBalanco.Controle  = Controle;
            EntradaItens.Controle = Controle;
            SaidaItens.Controle   = Controle;
            LancBalItens.Controle = Controle;
            MvSaida.LerDados(0);
            MvEntrada.LerDados(0);
            LancBalanco.LerDados(0);

            BtnConfirmar.Enabled = false;
            Application.DoEvents();

            if (MessageBox.Show("Confirma a Conclusão do Balanço?", "Confirmação", MessageBoxButtons.YesNo) == DialogResult.Yes)
            {
                BarProc.Visible = true;
                //Gerando o Movimento de Saida
                DataSet TabSaida = new DataSet();
                TabSaida = Controle.ConsultaTabela("SELECT * FROM BALANCOITENS WHERE SALDOESTOQUE > 0 AND ID_BALANCO=" + MvBalanco.IdBalanco.ToString());
                if (TabSaida.Tables[0].Rows.Count > 0)
                {
                    BarProc.Value   = 0;
                    BarProc.Maximum = TabSaida.Tables[0].Rows.Count;

                    MvSaida.LerDados(0);
                    MvSaida.TpMov        = "ACESA";
                    MvSaida.Observacao   = "Movimento Gerado Automatico Pelo Sistema para Ajuste do Estoque Ref. Balanço:" + string.Format("{0:D6}", MvBalanco.IdBalanco);
                    MvSaida.Data         = MvBalanco.Data;
                    MvSaida.IdFilial     = FrmPrincipal.IdFilialConexao;
                    MvSaida.DtEmissao    = MvBalanco.Data;
                    MvSaida.DtEntSai     = MvBalanco.Data;
                    MvSaida.Solicitante  = MvBalanco.Responsavel;
                    MvSaida.Documento    = "BALANÇO AUT.";
                    MvSaida.NumDocumento = string.Format("{0:D6}", MvBalanco.IdBalanco);
                    MvSaida.GravarDados();

                    for (int I = 0; I <= TabSaida.Tables[0].Rows.Count - 1; I++)
                    {
                        SaidaItens.LerDados(0);
                        SaidaItens.IdMov     = MvSaida.IdMov;
                        SaidaItens.IdProduto = int.Parse(TabSaida.Tables[0].Rows[I]["ID_PRODUTO"].ToString());
                        SaidaItens.Qtde      = decimal.Parse(TabSaida.Tables[0].Rows[I]["SALDOESTOQUE"].ToString());
                        SaidaItens.GravarDados();
                        BarProc.Value = BarProc.Value + 1;
                        Application.DoEvents();
                    }
                }
                //Gerando o Movimento de Entrada
                DataSet TabEntrada = new DataSet();
                TabEntrada = Controle.ConsultaTabela("SELECT * FROM BALANCOITENS WHERE SALDOESTOQUE < 0 AND ID_BALANCO=" + MvBalanco.IdBalanco.ToString());
                if (TabEntrada.Tables[0].Rows.Count > 0)
                {
                    BarProc.Value   = 0;
                    BarProc.Maximum = TabEntrada.Tables[0].Rows.Count;

                    MvEntrada.LerDados(0);
                    MvEntrada.TpMov        = "ACEEN";
                    MvEntrada.Observacao   = "Movimento Gerado Automatico Pelo Sistema para Ajuste do Estoque Ref. Balanço:" + string.Format("{0:D6}", MvBalanco.IdBalanco);
                    MvEntrada.Data         = MvBalanco.Data;
                    MvEntrada.IdFilial     = FrmPrincipal.IdFilialConexao;
                    MvEntrada.DtEmissao    = MvBalanco.Data;
                    MvEntrada.DtEntSai     = MvBalanco.Data;
                    MvEntrada.Solicitante  = MvBalanco.Responsavel;
                    MvEntrada.Documento    = "BALANÇO AUT.";
                    MvEntrada.NumDocumento = string.Format("{0:D6}", MvBalanco.IdBalanco);
                    MvEntrada.GravarDados();

                    for (int I = 0; I <= TabEntrada.Tables[0].Rows.Count - 1; I++)
                    {
                        EntradaItens.LerDados(0);
                        EntradaItens.IdMov     = MvEntrada.IdMov;
                        EntradaItens.IdProduto = int.Parse(TabEntrada.Tables[0].Rows[I]["ID_PRODUTO"].ToString());
                        EntradaItens.Qtde      = -1 * decimal.Parse(TabEntrada.Tables[0].Rows[I]["SALDOESTOQUE"].ToString());
                        EntradaItens.GravarDados();
                        BarProc.Value = BarProc.Value + 1;
                        Application.DoEvents();
                    }
                }
                //Verificando os Lançamentos de Saida
                DataSet TabSaldo = new DataSet();
                TabSaldo = Controle.ConsultaTabela("SELECT * FROM BALANCOITENS WHERE ID_BALANCO=" + MvBalanco.IdBalanco.ToString());
                if (TabSaldo.Tables[0].Rows.Count > 0)
                {
                    BarProc.Value   = 0;
                    BarProc.Maximum = TabSaldo.Tables[0].Rows.Count;

                    LancBalanco.LerDados(0);
                    LancBalanco.TpMov        = "BALAN";
                    LancBalanco.Observacao   = "Movimento Gerado Automatico Lançametno do Saldo de Balanço Ref. Balanço:" + string.Format("{0:D6}", MvBalanco.IdBalanco);
                    LancBalanco.Data         = MvBalanco.Data;
                    LancBalanco.IdFilial     = FrmPrincipal.IdFilialConexao;
                    LancBalanco.DtEmissao    = MvBalanco.Data;
                    LancBalanco.DtEntSai     = MvBalanco.Data;
                    LancBalanco.Solicitante  = MvBalanco.Responsavel;
                    LancBalanco.Documento    = "BALANÇO AUT.";
                    LancBalanco.NumDocumento = string.Format("{0:D6}", MvBalanco.IdBalanco);
                    LancBalanco.GravarDados();

                    for (int I = 0; I <= TabSaldo.Tables[0].Rows.Count - 1; I++)
                    {
                        LancBalItens.LerDados(0);
                        LancBalItens.IdMov     = LancBalanco.IdMov;
                        LancBalItens.IdProduto = int.Parse(TabSaldo.Tables[0].Rows[I]["ID_PRODUTO"].ToString());
                        LancBalItens.Qtde      = decimal.Parse(TabSaldo.Tables[0].Rows[I]["QTDE"].ToString());
                        LancBalItens.GravarDados();
                        BarProc.Value = BarProc.Value + 1;
                        Application.DoEvents();
                    }
                }

                //Concluindo o Movimento de Entrada
                SqlDataReader Tab;
                if (MvEntrada.IdMov > 0)
                {
                    Tab = Controle.ConsultaSQL("SELECT * FROM MVESTOQUEITENS WHERE Id_Mov=" + MvEntrada.IdMov.ToString());
                    ControleEstoque.MovimentoEstoque(Tab, 1, 1, false, MvEntrada.TpMov, MvEntrada.DtEntSai, MvEntrada.IdFilial);
                    MvEntrada.Concluir();
                }
                //Concluindo o Movimento de Saida
                if (MvSaida.IdMov > 0)
                {
                    Tab = Controle.ConsultaSQL("SELECT * FROM MVESTOQUEITENS WHERE Id_Mov=" + MvSaida.IdMov.ToString());
                    ControleEstoque.MovimentoEstoque(Tab, 2, 1, false, MvSaida.TpMov, MvSaida.DtEntSai, MvSaida.IdFilial);
                    MvSaida.Concluir();
                }

                //Concluindo o Movimento do Novo Saldo
                if (LancBalanco.IdMov > 0)
                {
                    Tab = Controle.ConsultaSQL("SELECT * FROM MVESTOQUEITENS WHERE Id_Mov=" + LancBalanco.IdMov.ToString());
                    ControleEstoque.MovimentoEstoque(Tab, 1, 1, false, LancBalanco.TpMov, LancBalanco.DtEntSai, LancBalanco.IdFilial);
                    LancBalanco.Concluir();
                }
                Controle.ExecutaSQL("UPDATE BALANCO SET STATUS=1,ID_ENTRADA=" + MvEntrada.IdMov.ToString() + ",ID_SAIDA=" + MvSaida.IdMov.ToString() + ",ID_SALDO=" + LancBalanco.IdMov.ToString() + " WHERE ID_BALANCO=" + MvBalanco.IdBalanco.ToString());
                FrmPrincipal.RegistrarAuditoria(this.Text + " Item", MvBalanco.IdBalanco, MvBalanco.IdBalanco.ToString(), 4, "Concluisão do Balanço");
                MessageBox.Show("Balanço Concluido", "Atenção", MessageBoxButtons.OK, MessageBoxIcon.Information);
                BarProc.Visible = false;
                PopularCampos(MvBalanco.IdBalanco);
            }
        }