private void Excluir(int inv) { if (this.operacao == "Editar") { try { DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); BLLInventario bll = new BLLInventario(cx); bll.Excluir(Convert.ToInt32(txtNumeroInventario.Text)); this.Salvar(); MessageBox.Show("Inventário alterado com sucesso!"); } catch { MessageBox.Show("Impossível editar o registro " + txtNumeroInventario.Text + ". \n Ele está sendo utilizado em outro local."); } } else { try { DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); BLLInventario bll = new BLLInventario(cx); bll.Excluir(Convert.ToInt32(txtNumeroInventario.Text)); } catch { MessageBox.Show("Impossível excluir o registro " + txtNumeroInventario.Text + ". \n Ele está sendo utilizado em outro local."); } } }
private void btLocalizar_Click(object sender, EventArgs e) { frmConsultaInventario f = new frmConsultaInventario(idUsuario); f.ShowDialog(); f.Dispose(); if (f.numeroInv > 0) { string retornaInv = "select i.inventario, i.id_unidade, i.data_criacao_inv, i.data_mov_inv, i.tipo, " + "i.id_produto, p.cod_produto, p.nome_produto, p.marca_produto, p.modelo_produto, " + "i.quant_inv, i.id_usuario, i.concluido from inventario i " + "inner join produto p on i.id_produto = p.id_produto " + "WHERE i.inventario = " + f.numeroInv; DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); BLLInventario bll = new BLLInventario(cx); DataTable tabela = bll.Localizar(retornaInv); dgvInventario.Rows.Clear(); txtNumeroInventario.Text = Convert.ToInt32(tabela.Rows[0]["inventario"]).ToString("00000000"); txtDataInventario.Text = Convert.ToDateTime(tabela.Rows[0]["data_criacao_inv"]).ToString("d"); txtDataMovimento.Text = Convert.ToDateTime(tabela.Rows[0]["data_mov_inv"]).ToString("d"); cbUnidade.Text = Convert.ToInt32(tabela.Rows[0]["id_unidade"]).ToString("00"); txtAberto.Text = tabela.Rows[0]["concluido"].ToString(); if (tabela.Rows[0]["tipo"].ToString() == "C") { cbTipoInv.Text = "Inventário"; } else { cbTipoInv.Text = "Estoque inicial"; } for (int i = 0; i < tabela.Rows.Count; i++) { string idProd = Convert.ToInt32(tabela.Rows[i]["id_produto"]).ToString(); string codProduto = tabela.Rows[i]["cod_produto"].ToString(); string nomeProd = tabela.Rows[i]["nome_produto"].ToString(); string marcaProd = tabela.Rows[i]["marca_produto"].ToString(); string modeloProd = tabela.Rows[i]["modelo_produto"].ToString(); string quantInventario = tabela.Rows[i]["quant_inv"].ToString(); String[] P = new string[] { idProd, codProduto, nomeProd, marcaProd, modeloProd, quantInventario }; this.dgvInventario.Rows.Add(P); } this.AlteraBotoes(3); } }
private void frmPosicaoDeEstoqueDados_Load(object sender, EventArgs e) { string idproduto; string codprod; string nomeprod; string quantprod; string nomegrupo; string codgrupo = "00"; string busca = ""; DALConexao connect = new DALConexao(DadosDaConexao.StringDaConexao); BLLUsuario bllu = new BLLUsuario(connect); DTOUsuario modelou = bllu.CarregaModeloUsuario(idUsuario); this.Text = this.Text + " - " + modelou.LoginUsuario.ToString() + " (" + modelou.IniciaisUsuario.ToString() + ")"; SqlConnection con = new SqlConnection(DadosDaConexao.StringDaConexao.ToString()); // making connection SqlDataAdapter conUni = new SqlDataAdapter("select nome_unidade from unidade where cod_unidade = " + unidade, con); DataTable dtu = new DataTable(); //this is creating a virtual table conUni.Fill(dtu); lbPosicaoDia.Text = lbPosicaoDia.Text + data.ToString("d") + " da unidade " + dtu.Rows[0][0].ToString(); if (produto != ".") { busca = "select p.id_produto, p.cod_produto, p.nome_produto, g.nome_grupo from produto p " + "inner join grupo g on p.id_grupo = g.id_grupo where p.cod_produto = " + produto + " order by cod_produto"; } else { busca = "select p.id_produto, p.cod_produto, p.nome_produto, g.nome_grupo from produto p " + "inner join grupo g on p.id_grupo = g.id_grupo where " + grupo + " order by cod_produto"; } SqlDataAdapter sda = new SqlDataAdapter(busca, con); DataTable dt = new DataTable(); //this is creating a virtual table sda.Fill(dt); if (dt.Rows.Count > 0) { DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); //posição do item for (int i = 0; i < dt.Rows.Count; i++) { idproduto = dt.Rows[i][0].ToString(); codprod = dt.Rows[i][1].ToString(); nomeprod = dt.Rows[i][2].ToString(); nomegrupo = dt.Rows[i][3].ToString(); quantprod = "0"; #region busca quant int ultimoInv = 0; int ultimosMovs = 0; DateTime dataUltimoInv; //Localiza quantidade do último inventario concluído. string buscaUltimoInv = "select inventario, data_mov_inv, id_produto, quant_inv from inventario " + " where concluido = 'c' and id_produto = " + idproduto + " and id_unidade = " + unidade + " and data_mov_inv < '" + data.ToString("d") + "' order by data_mov_inv asc;"; BLLInventario bll = new BLLInventario(cx); DataTable tabela = bll.Localizar(buscaUltimoInv); try { ultimoInv = Convert.ToInt32(tabela.Rows[0]["quant_inv"]); } catch { ultimoInv = 0; } try { dataUltimoInv = Convert.ToDateTime(tabela.Rows[0]["data_mov_inv"]); } catch { DateTime data = new DateTime(1900, 1, 1); dataUltimoInv = data; } //Soma movimentos de um período de tempo. //select sum(quant_mov) as quantidade, id_produto from movimentacao where data_mov between '2016-05-10' and '2016-05-24' and id_produto = 38 group by id_produto, quant_mov; string buscaQuantMovimentacoes = "select sum(quant_mov) as quantidade, id_produto from movimentacao " + "where data_mov > '" + dataUltimoInv.ToString("d") + "' and data_mov <= '" + data.ToString("d") + "' and id_produto = " + idproduto + " and id_unidade = " + unidade + " group by id_produto;"; BLLMovimento bllquantmov = new BLLMovimento(cx); DataTable tabelamov = bllquantmov.LocalizarValor(buscaQuantMovimentacoes); try { ultimosMovs = Convert.ToInt32(tabelamov.Rows[0]["quantidade"]); } catch { ultimosMovs = 0; } quantprod = (ultimoInv + ultimosMovs).ToString(); #endregion if (Convert.ToInt32(quantprod) >= quant) { if (codgrupo != codprod.Substring(0, 2)) { String[] P = new string[] { "", nomegrupo, "" }; this.dgvPosicao.Rows.Add(P); String[] P1 = new string[] { codprod, nomeprod, quantprod }; this.dgvPosicao.Rows.Add(P1); } else { String[] P = new string[] { codprod, nomeprod, quantprod }; this.dgvPosicao.Rows.Add(P); } codgrupo = codprod.Substring(0, 2); } } } this.FormataDados(); }
private void Consulta() { busca = "select i.concluido, i.inventario, i.data_criacao_inv, COUNT(i.inventario) as quant_inventario, " + "u.iniciais_usuario from inventario i inner join usuario u on i.id_usuario = u.id_usuario " + "where i.id_unidade = " + cbUnidade.SelectedValue; //Leitura dos filtros string prefix = ""; int quantFiltros = 1; if (txtDataDe.Text.Trim() != "/ /" && txtDataA.Text == txtDataDe.Text) { if (quantFiltros > 0) { prefix = " and "; } busca = busca + " i.data_criacao_inv = '" + Convert.ToDateTime(txtDataDe.Text).ToString("d") + "'"; quantFiltros++; } if (txtDataDe.Text.Trim() != "/ /" && txtDataA.Text != txtDataDe.Text) { if (quantFiltros > 0) { prefix = " and "; } busca = busca + prefix + " i.data_criacao_inv >= '" + Convert.ToDateTime(txtDataDe.Text).ToString("d") + "' and " + "i.data_criacao_inv <= '" + Convert.ToDateTime(txtDataA.Text).ToString("d") + "'"; quantFiltros++; } if (txtNumero.Text.Trim() != "") { if (quantFiltros > 0) { prefix = " and "; } busca = busca + prefix + "i.inventario = " + txtNumero.Text; quantFiltros++; } if (cbAbertos.Checked == true) { if (quantFiltros > 0) { prefix = " and "; } busca = busca + prefix + " i.concluido = 'A'"; } busca = busca + " group by i.inventario, i.concluido, i.data_criacao_inv, u.iniciais_usuario;"; DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); BLLInventario bll = new BLLInventario(cx); DataTable tabela = bll.Localizar(busca); dgvInventario.Rows.Clear(); bool Aberto; for (int i = 0; i < tabela.Rows.Count; i++) { try { if (quantFiltros > 0) { prefix = " and "; } if (tabela.Rows[i]["concluido"].ToString() == "A") { Aberto = true; } else { Aberto = false; } string nrInv = Convert.ToInt32(tabela.Rows[i]["inventario"]).ToString("00000000"); string data = Convert.ToDateTime(tabela.Rows[i]["data_criacao_inv"]).ToString("d"); string quant = tabela.Rows[i]["quant_inventario"].ToString(); string usuario = tabela.Rows[i]["iniciais_usuario"].ToString(); String[] P = new string[] { Aberto.ToString(), nrInv, data, quant, usuario }; this.dgvInventario.Rows.Add(P); } catch { } } #endregion }
private void Salvar() { DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); DTOInventario rodainv = new DTOInventario(); BLLInventario bllinv = new BLLInventario(cx); if (this.operacao != "Editar") { try { SqlConnection con = new SqlConnection(DadosDaConexao.StringDaConexao.ToString()); // making connection SqlDataAdapter sda = new SqlDataAdapter("select max(inventario) from inventario", con); DataTable dt = new DataTable(); //this is creating a virtual table sda.Fill(dt); nrInventario = Convert.ToInt32(dt.Rows[0][0]); nrInventario = nrInventario + 1; txtNumeroInventario.Text = nrInventario.ToString("00000000"); } catch { txtNumeroInventario.Text = "00000001"; } } for (int i = 0; i < dgvInventario.RowCount; i++) { rodainv.Inventario = Convert.ToInt32(txtNumeroInventario.Text); rodainv.DataCriacaoInventario = Convert.ToDateTime(txtDataInventario.Text); rodainv.DataMovInventario = Convert.ToDateTime(txtDataMovimento.Text); rodainv.IdUnidade = Convert.ToInt32(cbUnidade.SelectedValue); rodainv.IdProduto = Convert.ToInt32(dgvInventario.Rows[i].Cells[0].Value); try { rodainv.QuantInv = Convert.ToInt32(dgvInventario.Rows[i].Cells[5].Value); } catch { rodainv.QuantInv = 0; } if (cbTipoInv.Text == "Inventário") { rodainv.Tipo = "C"; } else { rodainv.Tipo = "I"; } rodainv.IdUsuario = Convert.ToInt32(idUsuario); rodainv.concluido = "A"; bllinv.Incluir(rodainv); } }
private void btRodar_Click(object sender, EventArgs e) { int quantInv; DialogResult d = MessageBox.Show("Deseja rodar o inventário " + txtNumeroInventario.Text + " e gerar os movimentos relativos a ele?", "Aviso", MessageBoxButtons.YesNo); if (d.ToString() == "Yes") { DALConexao cx = new DALConexao(DadosDaConexao.StringDaConexao); DTOInventario inv = new DTOInventario(); BLLInventario bllinv = new BLLInventario(cx); bllinv.Concluir(Convert.ToInt32(txtNumeroInventario.Text)); // gerar movimentações de estoque DTOMovimento mov = new DTOMovimento(); BLLMovimento bllmov = new BLLMovimento(cx); for (int i = 0; i < dgvInventario.RowCount; i++) { mov.Lancamento = 0; mov.NfMov = Convert.ToInt32(txtNumeroInventario.Text); mov.DataNfMov = Convert.ToDateTime(txtDataInventario.Text); mov.DataCriacaoMov = DateTime.Now; mov.DataMov = Convert.ToDateTime(txtDataMovimento.Text); mov.IdUnidade = Convert.ToInt32(cbUnidade.SelectedValue); mov.IdFornecedor = Convert.ToInt32(cbUnidade.SelectedValue); mov.IdUsuario = idUsuario; mov.TipoMov = "Inventario"; mov.IdProduto = Convert.ToInt32(dgvInventario.Rows[i].Cells[0].Value); //buscar quantidade de diferença try { quantInv = Convert.ToInt32(dgvInventario.Rows[i].Cells[5].Value); } catch { quantInv = 0; } int ultimoInv = 0; int ultimosMovs = 0; DateTime dataUltimoInv; //Localiza quantidade do último inventario concluído. string buscaUltimoInv = "select inventario, data_mov_inv, id_produto, quant_inv from inventario " + " where concluido = 'c' and id_produto = " + mov.IdProduto + " and data_mov_inv < '" + Convert.ToDateTime(txtDataMovimento.Text).ToString("d") + "' order by data_mov_inv asc;"; BLLInventario bll = new BLLInventario(cx); DataTable tabela = bll.Localizar(buscaUltimoInv); try { ultimoInv = Convert.ToInt32(tabela.Rows[0]["quant_inv"]); } catch { ultimoInv = 0; } try { dataUltimoInv = Convert.ToDateTime(tabela.Rows[0]["data_mov_inv"]); } catch { DateTime data = new DateTime(1900, 1, 1); dataUltimoInv = data; } //Soma movimentos de um período de tempo. //select sum(quant_mov) as quantidade, id_produto from movimentacao where data_mov between '2016-05-10' and '2016-05-24' and id_produto = 38 group by id_produto, quant_mov; string buscaQuantMovimentacoes = "select sum(quant_mov) as quantidade, id_produto from movimentacao " + "where data_mov > '" + dataUltimoInv.ToString("d") + "' and data_mov <= '" + Convert.ToDateTime(txtDataMovimento.Text).ToString("d") + "' and id_produto = " + mov.IdProduto + " group by id_produto;"; BLLMovimento bllquantmov = new BLLMovimento(cx); DataTable tabelamov = bllquantmov.LocalizarValor(buscaQuantMovimentacoes); try { ultimosMovs = Convert.ToInt32(tabelamov.Rows[0]["quantidade"]); } catch { ultimosMovs = 0; } mov.QuantMov = quantInv - (ultimoInv + ultimosMovs); //Buscar custo unitario da ultima movimentacao de entrada string buscacusto = "select * from movimentacao " + "where id_produto = " + mov.IdProduto + " order by data_mov desc;"; BLLMovimento bllCustotmov = new BLLMovimento(cx); DataTable tabelacusto = bllCustotmov.LocalizarValor(buscacusto); try { mov.CustoUnitMov = Convert.ToDouble(tabelacusto.Rows[0]["custo_unitario_mov"]); } catch { mov.CustoUnitMov = 0.00; } bllmov.Incluir(mov); } MessageBox.Show("Inventário processado com sucesso."); LimpaCampos(); AlteraBotoes(1); } }