private LIS_PRODUTOCOTACAOFORNECEDORCollection ProdutoFornecedor(int idfornecedor) { LIS_PRODUTOCOTACAOFORNECEDORCollection PRODUTOCOTACAOFORNECEDORColl = new LIS_PRODUTOCOTACAOFORNECEDORCollection(); RowRelatorio.Clear(); RowRelatorio.Add(new RowsFiltro("IDFORNECEDOR", "System.Int32", "=", idfornecedor.ToString())); PRODUTOCOTACAOFORNECEDORColl = PRODUTOCOTACAOFORNECEDORP.ReadCollectionByParameter(RowRelatorio); return(PRODUTOCOTACAOFORNECEDORColl); }
private void PreencheGrid() { CreaterCursor Cr = new CreaterCursor(); this.Cursor = Cr.CreateCursor(Cr.btmap, 0, 0); try { dataGridFornproduto.Rows.Clear(); FORNECEDORProvider FORNECEDORP = new FORNECEDORProvider(); foreach (var PRODUTOCOTACAOFORNECEDORTy in PRODUTOCOTACAOFORNECEDORColl) { DataGridViewRow row2 = new DataGridViewRow(); string Telefone = FORNECEDORP.Read(Convert.ToInt32(PRODUTOCOTACAOFORNECEDORTy.IDFORNECEDOR)).TELEFONE1; row2.CreateCells(dataGridFornproduto, PRODUTOCOTACAOFORNECEDORTy.NOMEFORNECEDOR, Telefone); row2.DefaultCellStyle.Font = new Font("Arial", 8, FontStyle.Bold); dataGridFornproduto.Rows.Add(row2); //Produtos do Fornecedor LIS_PRODUTOCOTACAOFORNECEDORCollection PRODUTOCOTACAOFORNECEDOR2Coll = new LIS_PRODUTOCOTACAOFORNECEDORCollection(); PRODUTOCOTACAOFORNECEDOR2Coll = ProdutoFornecedor(Convert.ToInt32(PRODUTOCOTACAOFORNECEDORTy.IDFORNECEDOR)); if (PRODUTOCOTACAOFORNECEDOR2Coll.Count > 0) { DataGridViewRow row2_1 = new DataGridViewRow(); row2_1.CreateCells(dataGridFornproduto, "Nome Produto", "Valor Compra"); row2_1.DefaultCellStyle.Font = new Font("Arial", 8, FontStyle.Bold); dataGridFornproduto.Rows.Add(row2_1); } foreach (var PRODUTOCOTACAOFORNECEDOR2Ty in PRODUTOCOTACAOFORNECEDOR2Coll) { DataGridViewRow row2_2 = new DataGridViewRow(); row2_2.CreateCells(dataGridFornproduto, PRODUTOCOTACAOFORNECEDORTy.NOMEPRODUTO, Convert.ToDecimal(PRODUTOCOTACAOFORNECEDORTy.VALORCOMPRA).ToString("n2")); row2_2.DefaultCellStyle.Font = new Font("Arial", 8); dataGridFornproduto.Rows.Add(row2_2); } DataGridViewRow rowLinha_1 = new DataGridViewRow(); rowLinha_1.CreateCells(dataGridFornproduto, "__________________________________________________________________", "_________"); rowLinha_1.DefaultCellStyle.Font = new Font("Arial", 8, FontStyle.Bold); dataGridFornproduto.Rows.Add(rowLinha_1); } this.Cursor = Cursors.Default; } catch (Exception ex) { this.Cursor = Cursors.Default; MessageBox.Show("Erro técnico: " + ex.Message); } }
private static LIS_PRODUTOCOTACAOFORNECEDORCollection ExecuteReader(ref LIS_PRODUTOCOTACAOFORNECEDORCollection collection, ref FbDataReader dataReader, FbCommand dbCommand) { using (dataReader = dbCommand.ExecuteReader()) { collection = new LIS_PRODUTOCOTACAOFORNECEDORCollection(); if (dataReader.HasRows) { while (dataReader.Read()) { collection.Add(FillEntityObject(ref dataReader)); } } if (!(dataReader.IsClosed)) { dataReader.Close(); } dataReader.Dispose(); } return(collection); }
private void btnPesquisa_Click(object sender, EventArgs e) { try { RowRelatorio.Clear(); int idfornecedor = Convert.ToInt32(cbFornecedor.SelectedValue); if (idfornecedor > 0) { RowRelatorio.Add(new RowsFiltro("IDFORNECEDOR", "System.Int32", "=", idfornecedor.ToString())); } PRODUTOCOTACAOFORNECEDORColl = PRODUTOCOTACAOFORNECEDORP.ReadCollectionByParameter(RowRelatorio); //Remove ID repetido LIS_PRODUTOCOTACAOFORNECEDORCollection PRODUTOCOTACAOFORNECEDOR2Coll = new LIS_PRODUTOCOTACAOFORNECEDORCollection(); foreach (LIS_PRODUTOCOTACAOFORNECEDOREntity item in PRODUTOCOTACAOFORNECEDORColl) { if (PRODUTOCOTACAOFORNECEDOR2Coll.Find(delegate(LIS_PRODUTOCOTACAOFORNECEDOREntity item2) { return (item2.IDFORNECEDOR == item.IDFORNECEDOR); }) == null) { PRODUTOCOTACAOFORNECEDOR2Coll.Add(item); } } PRODUTOCOTACAOFORNECEDORColl.Clear(); PRODUTOCOTACAOFORNECEDORColl = PRODUTOCOTACAOFORNECEDOR2Coll; PreencheGrid(); } catch (Exception ex) { MessageBox.Show("Erro técnico: " + ex.Message); } }
public LIS_PRODUTOCOTACAOFORNECEDORCollection ReadCollectionByParameter(List <RowsFiltro> RowsFiltro, string FieldOrder) { FbDataReader dataReader = null; try { if (RowsFiltro != null) { if (RowsFiltro.Count > 0) { LIS_PRODUTOCOTACAOFORNECEDORCollection collection = null; string strSqlCommand = "SELECT * FROM LIS_PRODUTOCOTACAOFORNECEDOR WHERE ("; ArrayList _rowsFiltro = new ArrayList(); RowsFiltro.ForEach(delegate(RowsFiltro i) { string[] item = { i.Condicao.ToString(), i.Campo.ToString(), i.Tipo.ToString(), i.Operador.ToString(), i.Valor.ToString() }; _rowsFiltro.Add(item); }); int _count = 1; foreach (string[] item in _rowsFiltro) { strSqlCommand += "(" + item[1] + " " + item[3]; switch (item[2]) { case ("System.String"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " '" + item[4] + "')"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Int16"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Int32"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Int64"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Double"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Decimal"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Float"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " " + item[4] + ")"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Byte"): strSqlCommand += " " + item[4] + ")"; break; case ("System.SByte"): strSqlCommand += " " + item[4] + ")"; break; case ("System.Char"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " '" + item[4] + "')"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.DateTime"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " '" + item[4] + "')"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Guid"): if (item[3].ToUpper() != "LIKE") { strSqlCommand += " '" + item[4] + "')"; } else { strSqlCommand += " '%" + item[4] + "%')"; } break; case ("System.Boolean"): strSqlCommand += " " + item[4] + ")"; break; } if (_rowsFiltro.Count > 1) { if (_count < _rowsFiltro.Count) { strSqlCommand += " " + item[0] + " "; } _count++; } } strSqlCommand += ") order by " + FieldOrder; //Verificando a existência de um transação aberta if (dbTransaction != null) { if (dbCnn.State == ConnectionState.Closed) { dbCnn.Open(); } dbCommand = new FbCommand(strSqlCommand, dbCnn); dbCommand.CommandType = CommandType.Text; dbCommand.Transaction = ((FbTransaction)(dbTransaction)); } else { if (dbCnn == null) { dbCnn = new FbConnection(connectionString); } if (dbCnn.State == ConnectionState.Closed) { dbCnn.Open(); } dbCommand = new FbCommand(strSqlCommand, dbCnn); dbCommand.CommandType = CommandType.Text; dbCommand.Transaction = dbCnn.BeginTransaction(IsolationLevel.ReadCommitted); } collection = ExecuteReader(ref collection, ref dataReader, dbCommand); if (dataReader != null) { dataReader.Close(); dataReader.Dispose(); } if (dbTransaction == null) { dbCommand.Transaction.Commit(); dbCnn.Close(); } return(collection); } else { return(this.ReadCollection()); } } else { return(this.ReadCollection()); } } catch (Exception ex) { // Deleta reader if (dataReader != null) { dataReader.Close(); dataReader.Dispose(); } if (dbTransaction != null) { this.RollbackTransaction(); } else { if (dbCommand.Transaction != null) { dbCommand.Transaction.Rollback(); } if (dbCnn.State == ConnectionState.Open) { dbCnn.Close(); } } throw ex; } }
public LIS_PRODUTOCOTACAOFORNECEDORCollection ReadCollection() { FbDataReader dataReader = null; try { LIS_PRODUTOCOTACAOFORNECEDORCollection collection = null; //Verificando a existência de um transação aberta if (dbTransaction != null) { if (dbCnn.State == ConnectionState.Closed) { dbCnn.Open(); } dbCommand = new FbCommand("SELECT * FROM LIS_PRODUTOCOTACAOFORNECEDOR", dbCnn); dbCommand.Transaction = ((FbTransaction)(dbTransaction)); } else { if (dbCnn == null) { dbCnn = ((FbConnection)GetConnectionDB()); } if (dbCnn.State == ConnectionState.Closed) { dbCnn.Open(); } dbCommand = new FbCommand("SELECT * FROM LIS_PRODUTOCOTACAOFORNECEDOR", dbCnn); dbCommand.Transaction = dbCnn.BeginTransaction(IsolationLevel.ReadCommitted); } // Tipo do comando de banco Procedure ou SQL dbCommand.CommandType = CommandType.Text; collection = ExecuteReader(ref collection, ref dataReader, dbCommand); if (dataReader != null) { dataReader.Close(); dataReader.Dispose(); } if (dbTransaction == null) { dbCommand.Transaction.Commit(); dbCnn.Close(); } return(collection); } catch (Exception ex) { // Deleta reader if (dataReader != null) { dataReader.Close(); dataReader.Dispose(); } if (dbTransaction != null) { this.RollbackTransaction(); } else { if (dbCommand.Transaction != null) { dbCommand.Transaction.Rollback(); } if (dbCnn.State == ConnectionState.Open) { dbCnn.Close(); } } throw ex; } }