private void dgvOrdem_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { if (e.ColumnIndex == 10 && e.RowIndex >= 0) { DataGridViewRow row = this.dgvOrdem.Rows[e.RowIndex]; using (frmOrdemEdita form = new frmOrdemEdita(this)) { form.IdEntrada = Convert.ToInt32(row.Cells["EntradaId"].Value); form.ShowDialog(); } CarregaOrdem(); } if (e.ColumnIndex == 11 && e.RowIndex >= 0) { DataGridViewRow row = this.dgvOrdem.Rows[e.RowIndex]; if (MessageBox.Show("Deseja excluir o item selecionada?", "Informação,", MessageBoxButtons.OKCancel) == DialogResult.OK) { int id = Convert.ToInt32(row.Cells["EntradaId"].Value); dgvOrdem.Rows.RemoveAt(e.RowIndex); dgvOrdem.Update(); SomaSaida(); EntradaController.Delete(id); } } } catch (Exception ex) { frmErro.Mensagem(ex.Message); } }
private void btnFiltrar_Click(object sender, EventArgs e) { List <string> Campos = new List <string>(); List <string> Valores = new List <string>(); if (txtOrdem.Text.Length > 0) { Campos.Add("Ordem"); Valores.Add(txtOrdem.Text); } if (cmbCategoria.Text.Length > 0) { Campos.Add("T.Categoria"); Valores.Add(cmbCategoria.Text); } if (cmbComprador.Text.Length > 0) { Campos.Add("Comprador"); Valores.Add(cmbComprador.Text); } if (cmbFornecedor.Text.Length > 0) { Campos.Add("NomeFantasia"); Valores.Add(cmbFornecedor.Text); } ExibirEntradas(EntradaController.Consulta(Campos, Valores)); SomaSaida(); }
private void btnSalvar_Click(object sender, EventArgs e) { try { int fornecedorid = FornecedorController.GetIdfornecedor(cmbFornecedor.Text); int produtoid = ProdutosController.GetIdProduto(cmbProduto.Text); EntradaModel em = new EntradaModel { EntradaId = IdEntrada, ProdutoId = produtoid, FornecedorId = fornecedorid, Ordem = txtOrdem.Text, Quantidade = txtQuantidade.Text, DataEntrada = DateTime.Parse(txtData.Text).ToString("yyyy/MM/dd"), Preco = txtPreco.Text, Desconto = txtComDesconto.Text, Total = lblTotal.Text, DescontoTotal = txtDescontoFinal.Text, Categoria = cmbCategoria.Text, Comprador = cmbComprador.Text }; EntradaController.Update(em); frmordem.CarregaOrdem(); frmSuccess.Mensagem("Atualizado com Sucesso!!!"); this.Close(); } catch (Exception ex) { frmErro.Mensagem(ex.Message); } }
private void btnFechar_Click(object sender, EventArgs e) { try { DialogResult resultado = DialogResult; using (frmErro form = new frmErro("Deseja Realmente fechar a compra?")) { resultado = form.ShowDialog(); if (resultado == DialogResult.OK) { if (cmbFornecedor.Text.Length < 3) { frmSuccess.Mensagem("Favor Cadastrar um Fornecedor!!!!"); return; } if (txtData.Text.Length < 3) { frmSuccess.Mensagem("Favor Cadastrar uma Data!!!"); return; } if (dgvSaida.Rows.Count > 0) { foreach (DataGridViewRow dt in dgvSaida.Rows) { int fornecedor = FornecedorController.GetIdfornecedor(cmbFornecedor.Text); EntradaModel em = new EntradaModel(); em.ProdutoId = Convert.ToInt32(dt.Cells["id2"].Value); em.FornecedorId = fornecedor; em.Ordem = txtOrdem.Text; em.Quantidade = dt.Cells["quantidade"].Value.ToString(); em.DataEntrada = DateTime.Parse(txtData.Text).ToString("yyyy/MM/dd"); em.Preco = dt.Cells["preco2"].Value.ToString(); em.Desconto = dt.Cells["Desconto"].Value.ToString(); em.Total = dt.Cells["subtotal"].Value.ToString(); em.DescontoTotal = txtDescontoTotal.Text; em.Categoria = dt.Cells["Categoria"].Value.ToString(); em.Comprador = cmbComprador.Text.ToUpper(); EntradaController.Add(em); } dgvSaida.Rows.Clear(); } txtOrdem.Text = EntradaController.GetUltimaOrdem(); } } } catch (Exception ex) { frmSuccess.Mensagem("Ocorreu erro ao executar a finalização da compra: " + ex); } }
private void Consulta(string Campo, bool busca) { List <string> lista = new List <string>(); lista = EntradaController.GetLista(Campo); double Total = TotalGastro(); if (lista.Count > 0) { foreach (string item in lista) { double valor = 0; DataTable valores = EntradaController.GetSqlEntradas($"SELECT Total FROM Entradas WHERE UPPER({Campo}) = '{item.ToUpper()}' ORDER BY {Campo}"); string eixoY = item; #region Busca if (busca == true) { switch (Campo) { case "FornecedorId": eixoY = EntradaController.GetString($"SELECT NomeFantasia FROM Fornecedores where Id ='{item}'", "NomeFantasia"); break; case "ProdutoId": eixoY = EntradaController.GetString($"SELECT descricao FROM Produtos where id ='{item}'", "descricao"); break; } } #endregion if (valores.Rows.Count > 0) { valor = 0; foreach (DataRow dr in valores.Rows) { if (dr["Total"].ToString().Length > 0) { valor += Convert.ToDouble(dr["Total"].ToString()); } } } double porcentagem = Util.Porcentagem(valor, Total); Grafico.Series["ChartValores"].Label = "#PERCENT"; Grafico.Series["ChartValores"].Points.AddXY(eixoY, porcentagem); } } Grafico.Titles["Titulo"].Text = $"Total gasto: R$ {Total.ToString("N2")}"; }
private void txtData_KeyUp(object sender, KeyEventArgs e) { try { DataTable dt = EntradaController.GetEntradas("DataEntrada", txtData.Text); ExibirEntradas(dt); SomaSaida(); } catch { } }
private void txtProduto_KeyUp(object sender, KeyEventArgs e) { try { DataTable dt = EntradaController.GetEntradas("R.DESCRICAO", txtProduto.Text); ExibirEntradas(dt); SomaSaida(); } catch { } }
private void button1_Click(object sender, EventArgs e) { DataTable dt = EntradaController.GetEntradas(); foreach (DataRow dr in dt.Rows) { string data = DateTime.Parse(dr["DataEntrada"].ToString()).ToString("yyyy/MM/dd"); string sql = $"UPDATE ENTRADAS SET DATAENTRADA = '{data}' WHERE ENTRADAID = '{dr["EntradaId"].ToString()}'"; DalHelper.ExecutaQuery(sql); } MessageBox.Show("Feito"); }
private void cmbFornecedor_SelectedIndexChanged(object sender, EventArgs e) { try { int id = FornecedorController.GetIdfornecedor(cmbFornecedor.Text); DataTable dt = EntradaController.GetEntradas($"SELECT * FROM Entradas WHERE FornecedorId ={id} ORDER BY DataEntrada;"); ExibirEntradas(dt); SomaSaida(); } catch (Exception ex) { frmErro frm = new frmErro("Ocorreu um erro: " + ex.Message); } }
private void Variacao() { try { DataTable dt = EntradaController.GetSqlEntradas("SELECT ProdutoId, preco FROM Entradas ORDER by ProdutoId"); if (dt.Rows.Count > 0) { string descricaoAnt = ""; double precoAnt = 0; double Varicao = 0; for (int i = 0; i < dt.Rows.Count; i++) { string descricao = ProdutosController.GetStringProduto((int)dt.Rows[i]["ProdutoId"]); double Preco = Convert.ToDouble(dt.Rows[i]["Preco"].ToString()); if (i > 0) { if (descricao == descricaoAnt) { Varicao = ((Preco - precoAnt) / precoAnt) * 100; if (Varicao > 0) { Grafico.Series["ChartValores"].Label = "#PERCENT"; Grafico.Series["ChartValores"].Points.AddXY(descricao, Varicao); } } descricaoAnt = descricao; precoAnt = Preco; } else { descricaoAnt = descricao; precoAnt = Preco; } } Grafico.Titles["Titulo"].Text = "Variação do Preço"; } } catch (Exception ex) { frmErro frm = new frmErro("Ocorreu um erro no calculo da variação: " + ex.Message); frm.ShowDialog(); } }
private double TotalGastro() { double Total = 0; DataTable totais = EntradaController.GetSqlEntradas($"SELECT Total FROM Entradas;"); if (totais.Rows.Count > 0) { foreach (DataRow dr in totais.Rows) { double valor = Convert.ToDouble(dr["Total"].ToString()); Total += valor; } } return(Total); }
public void CarregaOrdem() { try { DataTable dt = EntradaController.Consulta(new List <string> { "ORDEM" }, new List <string> { txtOrdem.Text }); ExibirEntradas(dt); SomaSaida(); } catch { } }
private void frmEntrada_Load(object sender, EventArgs e) { try { DateTime data = DateTime.Now.Date; txtData.Text = data.ToString("dd/MM/yyyy"); CarregaFornecedores(); txtOrdem.Text = EntradaController.GetUltimaOrdem(); CarregaCampos(); txtCodigoBarra.Focus(); Util.CarregaCombo("Entradas", "Comprador", cmbComprador); } catch (Exception ex) { frmErro.Mensagem(ex.Message); } }
private void MaoObraMaterial() { List <string> lista = new List <string>(); lista = EntradaController.GetLista("Categoria"); double TotalMo = 0; double TotalMa = 0; double Total = TotalGastro(); if (lista.Count > 0) { foreach (string item in lista) { DataTable valores = EntradaController.GetSqlEntradas($"SELECT Total FROM Entradas WHERE Categoria = '{item}' ORDER BY Categoria"); if (valores.Rows.Count > 0) { foreach (DataRow dr in valores.Rows) { if (item == "Mão de Obra") { if (dr["Total"].ToString().Length > 0) { TotalMo += Convert.ToDouble(dr["Total"].ToString()); } } else { if (dr["Total"].ToString().Length > 0) { TotalMa += Convert.ToDouble(dr["Total"].ToString()); } } } } } Grafico.Series["ChartValores"].Label = "#PERCENT"; Grafico.Series["ChartValores"].Points.AddXY("Mão de Obra", Util.Porcentagem(TotalMo, Total)); Grafico.Series["ChartValores"].Points.AddXY("Materiais", Util.Porcentagem(TotalMa, Total)); } Grafico.Titles["Titulo"].Text = $"Total gasto: R$ {Total.ToString("N2")}"; }
public void CarregaCampos() { DataTable dts = FornecedorController.GetSqlfornecedores("select distinct NomeFantasia from Fornecedores order by NomeFantasia;"); Util.AutoCompleta(dts, cmbFornecedor); DataTable dtd = ProdutosController.GetProdutos("select distinct descricao from Produtos order by descricao;"); Util.AutoCompleta(dtd, txtDescricao); DataTable dtc = EntradaController.GetSqlEntradas("select distinct Categoria from Entradas order by Categoria;"); Util.AutoCompleta(dtc, txtCategoria); DataTable dtco = EntradaController.GetSqlEntradas("select distinct Comprador from Entradas order by Comprador;"); Util.AutoCompleta(dtco, cmbComprador); }
private void CarregaForme() { try { EntradaModel en = EntradaController.GetEntradaModel(IdEntrada); ProdutosModel pm = ProdutosController.GetProdutoModel(en.ProdutoId); cmbFornecedor.Text = FornecedorController.GetStringfornecedor(en.FornecedorId); cmbComprador.Text = en.Comprador; cmbProduto.Text = pm.descricao; txtOrdem.Text = en.Ordem; txtData.Text = en.DataEntrada; txtPreco.Text = en.Preco; txtDesconto.Text = pm.desconto.ToString(); txtComDesconto.Text = en.Desconto; txtQuantidade.Text = en.Quantidade.ToString(); txtDescontoFinal.Text = en.DescontoTotal; lblTotal.Text = en.Total; DataTable produtos = ProdutosController.GetProdutos("SELECT DISTINCT categoria FROM Produtos;"); cmbCategoria.Items.Clear(); if (produtos.Rows.Count > 0) { foreach (DataRow dr in produtos.Rows) { cmbCategoria.Items.Add(dr["categoria"].ToString()); } } cmbCategoria.Text = en.Categoria; } catch (Exception ex) { frmErro.Mensagem(ex.Message); } }
private void btnCadastrar_Click(object sender, EventArgs e) { EntradaController con = new EntradaController(); Lote obj = new Lote(); obj.Tipo_estoque = cbEstoqueTipo.Text; obj.Dias_validade = (DateTime)validadeDias.Value; obj.Peso_kg = (Decimal)pesoKg.Value; obj.Qtd_estoque = (int)estoque.Value; obj.Item = ItemDAO.findById((int)cbItem.SelectedValue); obj.Fornecedor = FornecedorDAO.findById((int)cbFornecedor.SelectedValue); obj.Valor_compra = (Decimal)valorCompra.Value; obj.DataFabricacao = (DateTime)dtFabricacao.Value; obj.Codigo = (String)tbxCodigo.Text; if (cbEstoqueTipo.SelectedValue != null || pesoKg.Value != 0 || estoque.Value != 0 || cbItem.SelectedValue != null || cbFornecedor.SelectedValue != null || valorCompra.Value != 0 || tbxCodigo.Text != "") { if (con.cadastrarLote(obj)) { MessageBox.Show("Cadastro realizado!!"); pesoKg.Value = 0; estoque.Value = 0; cbEstoqueTipo.SelectedIndex = 0; cbItem.SelectedIndex = 0; cbFornecedor.SelectedIndex = 0; valorCompra.Value = 0; tbxCodigo.Text = ""; } else { MessageBox.Show("Cadastro não realizado!!"); } } }
private void GeraReltatorio() { string pasta = Diretorio.CaminhoSalva("Aquivos pdf|*.pdf", "", ""); using (var doc = new Document(iTextSharp.text.PageSize.A4, 40, 40, 50, 50)) { PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(pasta, FileMode.CreateNew)); doc.Open(); PdfPTable pdfTable = new PdfPTable(new float[] { 100f }); pdfTable.WidthPercentage = 100f; Pdf.AddCelula(1, 0, FontTitulo, pdfTable, $"Relatorio Gastros por Fornecedores\n\n"); doc.Add(pdfTable); PdfPTable pdfTable2 = new PdfPTable(new float[] { 70f, 30f }); pdfTable2.WidthPercentage = 100f; Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.NO_BORDER, FontSubTitulo, pdfTable2, "FORNECEDOR"); Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.NO_BORDER, FontSubTitulo, pdfTable2, "SUBTOTAL"); doc.Add(pdfTable2); List <string> lista = new List <string>(); lista = EntradaController.GetLista("FornecedorId"); double total = 0; DataTable dt = new DataTable(); dt.Columns.Add("Fornecedor"); dt.Columns.Add("Valor"); if (lista.Count > 0) { foreach (string item in lista) { double valor = 0; DataTable valores = EntradaController.GetSqlEntradas($"SELECT Total FROM Entradas WHERE FornecedorId = '{item}' ORDER BY FornecedorId "); string fornecedor = EntradaController.GetString($"SELECT NomeFantasia FROM Fornecedores where Id ='{item}'", "NomeFantasia"); if (valores.Rows.Count > 0) { foreach (DataRow dr in valores.Rows) { if (dr["Total"].ToString().Length > 0) { valor += Convert.ToDouble(dr["Total"].ToString()); } } } dt.Rows.Add(fornecedor, valor.ToString("N2")); total += valor; } } dt.DefaultView.Sort = "Fornecedor ASC"; dt = dt.DefaultView.ToTable(); if (dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { PdfPTable pdfTable3 = new PdfPTable(new float[] { 70f, 30f }); pdfTable3.WidthPercentage = 100f; Pdf.AddCelula(Element.ALIGN_LEFT, Rectangle.LEFT_BORDER, FontLinhas, pdfTable3, dr["Fornecedor"].ToString()); Pdf.AddCelula(Element.ALIGN_RIGHT, Rectangle.LEFT_BORDER, FontLinhas, pdfTable3, dr["Valor"].ToString()); doc.Add(pdfTable3); } } PdfPTable pdfTable4 = new PdfPTable(new float[] { 70f, 30f }); pdfTable4.WidthPercentage = 100f; pdfTable4.DefaultCell.Border = Rectangle.BOTTOM_BORDER; Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontLinhas, pdfTable4, ""); Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontTotais, pdfTable4, $"Total: {total.ToString("N2")}"); doc.Add(pdfTable4); //doc.Add(Pdf.addParagrafoCentro("Relatório\n\n", Element.ALIGN_CENTER, FontTitulo)); doc.Close(); System.Diagnostics.Process.Start(pasta); } }
private void GeraReltatorioComprador() { string pasta = Diretorio.CaminhoSalva("Aquivos pdf|*.pdf", "", "RolComprador"); using (var doc = new Document(iTextSharp.text.PageSize.A4, 40, 40, 50, 50)) { PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(pasta, FileMode.CreateNew)); doc.Open(); PdfPTable pdfTable = new PdfPTable(new float[] { 100f }); pdfTable.WidthPercentage = 100f; Pdf.AddCelula(1, 0, FontTitulo, pdfTable, $"Relatorio Gastros por Compradores\n\n"); doc.Add(pdfTable); List <string> lista = new List <string>(); lista = EntradaController.GetLista("Comprador"); lista.Sort(); double total = 0; List <string> listaTotal = new List <string>(); if (lista.Count > 0) { foreach (string item in lista) { PdfPTable pdfTable3 = new PdfPTable(new float[] { 100f }); pdfTable3.WidthPercentage = 100f; Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.LEFT_BORDER, FontSubTitulo, pdfTable3, item); doc.Add(pdfTable3); PdfPTable pdfTable2 = new PdfPTable(new float[] { 20f, 60f, 20f }); pdfTable2.WidthPercentage = 100f; Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.NO_BORDER, FontSubTitulo, pdfTable2, "DATA"); Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.NO_BORDER, FontSubTitulo, pdfTable2, "PRODUTO"); Pdf.AddCelula(Element.ALIGN_CENTER, Rectangle.NO_BORDER, FontSubTitulo, pdfTable2, "SUBTOTAL"); doc.Add(pdfTable2); double valor = 0; DataTable valores = EntradaController.GetSqlEntradas($"SELECT DATAENTRADA, PRODUTOID,Total FROM Entradas WHERE Comprador = '{item}' ORDER BY DATAENTRADA DESC "); if (valores.Rows.Count > 0) { foreach (DataRow dr in valores.Rows) { string produto = ProdutosController.GetStringProduto(int.Parse(dr["ProdutoId"].ToString())); string data = DateTime.Parse(dr["DataEntrada"].ToString()).ToString("dd/MM/yyyy"); if (dr["Total"].ToString().Length > 0) { valor += Convert.ToDouble(dr["Total"].ToString()); } PdfPTable tab = new PdfPTable(new float[] { 15f, 65f, 20f }); tab.WidthPercentage = 100f; Pdf.AddCelula(Element.ALIGN_LEFT, Rectangle.LEFT_BORDER, FontLinhas, tab, data); Pdf.AddCelula(Element.ALIGN_LEFT, Rectangle.LEFT_BORDER, FontLinhas, tab, produto); Pdf.AddCelula(Element.ALIGN_RIGHT, Rectangle.LEFT_BORDER, FontLinhas, tab, dr["Total"].ToString()); doc.Add(tab); } } listaTotal.Add($"{item};{valor.ToString("N2")}"); doc.Add(Pdf.addParagrafoCentro("\n\n", Element.ALIGN_CENTER, FontTitulo)); } } if (listaTotal.Count > 0) { foreach (string item in listaTotal) { string[] vetor = item.Split(';'); PdfPTable tab3 = new PdfPTable(new float[] { 80f, 20f }); tab3.WidthPercentage = 100f; tab3.DefaultCell.Border = Rectangle.BOTTOM_BORDER; Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontLinhas, tab3, vetor[0] + ": "); Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontTotais, tab3, $"R$ {vetor[1]}"); doc.Add(tab3); total += double.Parse(vetor[1]); } } PdfPTable pdfTable4 = new PdfPTable(new float[] { 70f, 30f }); pdfTable4.WidthPercentage = 100f; pdfTable4.DefaultCell.Border = Rectangle.BOTTOM_BORDER; Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontLinhas, pdfTable4, ""); Pdf.AddCelula(Element.ALIGN_RIGHT, 0, FontTotais, pdfTable4, $"Total: {total.ToString("N2")}"); doc.Add(pdfTable4); //doc.Add(Pdf.addParagrafoCentro("Relatório\n\n", Element.ALIGN_CENTER, FontTitulo)); doc.Close(); System.Diagnostics.Process.Start(pasta); } }
private void GeraReltatorioProduto() { string pasta = Diretorio.CaminhoSalva("Aquivos pdf|*.pdf", "", ""); using (var doc = new Document(iTextSharp.text.PageSize.A4, 40, 40, 50, 50)) { PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(pasta, FileMode.CreateNew)); doc.Open(); //Titulo do documento doc.Add(Pdf.addParagrafoCentro("Relatório dos Materiais utilizados\n\n", Element.ALIGN_CENTER, FontTitulo)); InserirLinha(doc, new float[] { 10f, 70f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_CENTER, Element.ALIGN_CENTER, Element.ALIGN_CENTER }, FontSubTitulo, new List <string> { "QT", "Produto", "SubTotal" }); List <string> lista = new List <string>(); List <string> ListaProdutos = new List <string>(); lista = EntradaController.GetLista("Categoria"); double Total = 0; if (lista.Count > 0) { foreach (string item in lista) { double TotalCategoria = 0; doc.Add(Pdf.addParagrafoCentro("\n", Element.ALIGN_CENTER, FontTitulo)); InserirLinha(doc, new float[] { 100f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_CENTER }, FontTitulo, new List <string> { item.ToUpper() }); DataTable valores = EntradaController.GetSqlEntradas($"SELECT * FROM Entradas WHERE Categoria = '{item}' ORDER BY Categoria "); //DataRow[] result = valores.Select("Date > #6/1/2001#"); List <string> produtos = new List <string>(); if (valores.Rows.Count > 0) { foreach (DataRow dr in valores.Rows) { string produto = ProdutosController.GetStringProduto(Convert.ToInt32(dr["ProdutoId"].ToString())); produtos.Add(produto); } } produtos.Sort(); string anterior = ""; if (produtos.Count > 0) { foreach (string prod in produtos) { if (prod != anterior) { int id = ProdutosController.GetIdProduto(prod); double contar = 0; double subtotal = 0; DataTable dt = EntradaController.GetSqlEntradas($"SELECT * FROM Entradas WHERE ProdutoId = {id} "); if (dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { contar += Convert.ToDouble(dr["Quantidade"]); subtotal += Convert.ToDouble(dr["Total"]); } } InserirLinha(doc, new float[] { 10f, 70f, 20f }, Rectangle.LEFT_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { contar.ToString(), prod, "R$ " + subtotal.ToString("N2") }); Total += subtotal; TotalCategoria += subtotal; } anterior = prod; } } InserirLinha(doc, new float[] { 10f, 20f, 70f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "", "", " SUBTOTAL = R$ " + TotalCategoria.ToString("N2") }); } } InserirLinha(doc, new float[] { 10f, 20f, 70f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "", "", " TOTAL = R$ " + Total.ToString("N2") }); doc.Close(); System.Diagnostics.Process.Start(pasta); } }
private void GeraReltatorioOrdem() { try { string pasta = Diretorio.CaminhoSalva("Aquivos pdf|*.pdf", "", "RelatorioPorOrdem"); using (var doc = new Document(iTextSharp.text.PageSize.A4, 40, 40, 50, 50)) { PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(pasta, FileMode.CreateNew)); doc.Open(); //Titulo do documento doc.Add(Pdf.addParagrafoCentro("Relatório das Ordens\n\n", Element.ALIGN_CENTER, FontTitulo)); double Total = 0; doc.Add(Pdf.addParagrafoCentro("\n", Element.ALIGN_CENTER, FontTitulo)); //Todos as entrada de um determinada data DataTable valores = EntradaController.GetSqlEntradas("SELECT A.Ordem, B.NomeFantasia, A.DataEntrada, A.quantidade, C.descricao, A.total FROM Entradas as A INNER JOIN Fornecedores as B ON B.Id = A.FornecedorId INNER JOIN Produtos as C on C.Id = A.ProdutoId ORDER by A.DataEntrada DESC;"); string stringOrdem = ""; bool inicio = true; double TotalOrdem = 0; if (valores.Rows.Count > 0) { foreach (DataRow dr in valores.Rows) { DateTime dt = DateTime.Parse(dr["DATAENTRADA"].ToString()); string data = dt.ToString("dd/MM/yyyy"); //var filteredDataTable = valores.Select($"Ordem = '{ordem}'"); if (dr["ORDEM"].ToString() != stringOrdem) { if (inicio == true) { InserirLinha(doc, new float[] { 100f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT }, FontLinhas, new List <string> { $"ORDEM: {dr["ORDEM"].ToString()}\nFORNECEDOR: {dr["NOMEFANTASIA"].ToString()}\nDATA: {data}" }); InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_CENTER, Element.ALIGN_CENTER, Element.ALIGN_CENTER }, FontSubTitulo, new List <string> { "QT", "PRODUTO", "SUBTOTAL" }); InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { dr["QUANTIDADE"].ToString(), dr["DESCRICAO"].ToString(), dr["TOTAL"].ToString() }); inicio = false; } else { InserirLinha(doc, new float[] { 80f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "", " R$ " + TotalOrdem.ToString("N2") }); InserirLinha(doc, new float[] { 100f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT }, FontLinhas, new List <string> { $"ORDEM: {dr["ORDEM"].ToString()}\nFORNECEDOR: {dr["NOMEFANTASIA"].ToString()}\nDATA: {data}" }); InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_CENTER, Element.ALIGN_CENTER, Element.ALIGN_CENTER }, FontSubTitulo, new List <string> { "QT", "PRODUTO", "SUBTOTAL" }); InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { dr["QUANTIDADE"].ToString(), dr["DESCRICAO"].ToString(), dr["TOTAL"].ToString() }); } TotalOrdem = Convert.ToDouble(dr["Total"].ToString()); } else { InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { dr["QUANTIDADE"].ToString(), dr["DESCRICAO"].ToString(), dr["TOTAL"].ToString() }); TotalOrdem += Convert.ToDouble(dr["TOTAL"].ToString()); } stringOrdem = dr["ORDEM"].ToString(); Total += double.Parse(dr["TOTAL"].ToString()); } } InserirLinha(doc, new float[] { 80f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "TOTAL =", "R$ " + Total.ToString("N2") }); doc.Close(); System.Diagnostics.Process.Start(pasta); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void GeraReltatorioOrdem_() { try { string pasta = Diretorio.CaminhoSalva("Aquivos pdf|*.pdf", "", "RelatorioPorOrdem"); using (var doc = new Document(iTextSharp.text.PageSize.A4, 40, 40, 50, 50)) { PdfWriter wri = PdfWriter.GetInstance(doc, new FileStream(pasta, FileMode.CreateNew)); doc.Open(); //Titulo do documento doc.Add(Pdf.addParagrafoCentro("Relatório das Ordens\n\n", Element.ALIGN_CENTER, FontTitulo)); List <string> listaDatas = new List <string>(); List <string> listaOrdens = new List <string>(); listaDatas = EntradaController.GetLista("DataEntrada"); listaDatas.Sort(); double Total = 0; if (listaDatas.Count > 0) { InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_CENTER, Element.ALIGN_CENTER, Element.ALIGN_CENTER }, FontSubTitulo, new List <string> { "QT", "PRODUTO", "SUBTOTAL" }); foreach (string data in listaDatas) { doc.Add(Pdf.addParagrafoCentro("\n", Element.ALIGN_CENTER, FontTitulo)); //Todos as entrada de um determinada data DataTable valores = EntradaController.GetSqlEntradas($"SELECT * FROM Entradas WHERE DataEntrada = '{data}' ORDER BY DataEntrada"); //lista de ordens de uma determinada ordem listaOrdens = EntradaController.GetLista("Ordem", "DataEntrada", data); listaOrdens.Sort(); string stringOrdem = ""; foreach (string ordem in listaOrdens) { double TotalOrdem = 0; var filteredDataTable = valores.Select($"Ordem = '{ordem}'"); foreach (DataRow dr in filteredDataTable) { string descricao = ProdutosController.GetStringProduto(Convert.ToInt32(dr["ProdutoId"].ToString())); if (ordem != stringOrdem) { string fornecedor = FornecedorController.GetStringfornecedor(Convert.ToInt32(dr["FornecedorId"].ToString())); InserirLinha(doc, new float[] { 100f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT }, FontLinhas, new List <string> { $"ORDEM: {ordem}\nFORNECEDOR: {fornecedor}\nDATACOMPRA: {data}" }); InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { dr["Quantidade"].ToString(), descricao, dr["Total"].ToString() }); TotalOrdem = Convert.ToDouble(dr["Total"].ToString()); } else { InserirLinha(doc, new float[] { 10f, 75f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_LEFT, Element.ALIGN_LEFT, Element.ALIGN_RIGHT }, FontLinhas, new List <string> { dr["Quantidade"].ToString(), descricao, dr["Total"].ToString() }); TotalOrdem += Convert.ToDouble(dr["Total"].ToString()); } stringOrdem = ordem; } Total += TotalOrdem; InserirLinha(doc, new float[] { 80f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "SUBTOTAL =", " R$ " + TotalOrdem.ToString("N2") }); } } } InserirLinha(doc, new float[] { 80f, 20f }, Rectangle.NO_BORDER, new List <int> { Element.ALIGN_RIGHT, Element.ALIGN_RIGHT }, FontTotais, new List <string> { "TOTAL =", "R$ " + Total.ToString("N2") }); doc.Close(); System.Diagnostics.Process.Start(pasta); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }