static public void GerarEstoque(string nomeArquivo) { ProdutoEstoqueDAO produtoEstoqueDAO = new ProdutoEstoqueDAO(); List <ProdutoEstoque> produtos = produtoEstoqueDAO.ListAll(); /* Cria um documento */ Document relatorio = new Document(PageSize.A4); relatorio.AddCreationDate(); /* Cria o arquivo PDF */ PdfWriter pdfWriter = PdfWriter.GetInstance(relatorio, new FileStream(nomeArquivo, FileMode.Create)); /* Abre o documento criado */ relatorio.Open(); /* Título do Relatório */ Paragraph titulo = new Paragraph(); titulo.Alignment = Element.ALIGN_CENTER; titulo.Add("Relatório de Estoque\n"); titulo.Add("Emitido em: " + DateTime.Now.ToShortDateString() + " " + DateTime.Now.ToShortTimeString() + "\n\n\n"); relatorio.Add(titulo); /* Tabela com os produtos */ PdfPTable tabela = new PdfPTable(new float[] { 100, 60, 40, 50 }); tabela.AddCell(new Phrase("Produto", new Font(Font.NORMAL, 8, Font.BOLD))); tabela.AddCell(new Phrase("Quantidade Min.", new Font(Font.NORMAL, 8, Font.BOLD))); tabela.AddCell(new Phrase("Quantidade", new Font(Font.NORMAL, 8, Font.BOLD))); tabela.AddCell(new Phrase("Situação", new Font(Font.NORMAL, 8, Font.BOLD))); foreach (ProdutoEstoque produtoEstoque in produtos) { tabela.AddCell(new Phrase(produtoEstoque.Produto.Descricao, new Font(Font.NORMAL, 8))); tabela.AddCell(new Phrase(produtoEstoque.Produto.QntMinEstoque.ToString(), new Font(Font.NORMAL, 8))); tabela.AddCell(new Phrase(produtoEstoque.QuantidadeEstoque.ToString(), new Font(Font.NORMAL, 8))); if (produtoEstoque.QuantidadeEstoque < produtoEstoque.Produto.QntMinEstoque) { tabela.AddCell(new Phrase("Estoque Baixo", new Font(Font.NORMAL, 8))); } else { tabela.AddCell(new Phrase("Estoque Normal", new Font(Font.NORMAL, 8))); } } relatorio.Add(tabela); relatorio.Close(); }
private void AtualizaDGV() { ProdutoEstoqueDAO produtoEstoqueDAO = new ProdutoEstoqueDAO(); List <ProdutoEstoque> listaProdutos = produtoEstoqueDAO.ListAll(); foreach (ProdutoEstoque produtoEstoque in listaProdutos) { dgvProdutosEstoque.Rows.Add(produtoEstoque.Produto.Codigo, produtoEstoque.Produto.Descricao, produtoEstoque.QuantidadeEstoque, produtoEstoque.Produto.QntMinEstoque); } dgvProdutosEstoque.ClearSelection(); }