예제 #1
0
        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);
        }
예제 #2
0
        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);
            }
        }
예제 #3
0
        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);
        }
예제 #4
0
        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);
            }
        }
예제 #5
0
        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;
            }
        }
예제 #6
0
        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;
            }
        }