Example #1
0
        private static PRODUTOCOMPOSICAOEntity FillEntityObject(ref FbDataReader DataReader)
        {
            PRODUTOCOMPOSICAOEntity entity = new PRODUTOCOMPOSICAOEntity();

            FirebirdGetDbData getData = new FirebirdGetDbData();

            entity.IDPRODUTOCOMPOSICAO = getData.ConvertDBValueToInt32(DataReader, DataReader.GetOrdinal("IDPRODUTOCOMPOSICAO"));
            entity.IDFORNECEDOR        = getData.ConvertDBValueToInt32Nullable(DataReader, DataReader.GetOrdinal("IDFORNECEDOR"));
            entity.IDPRODUTO           = getData.ConvertDBValueToInt32Nullable(DataReader, DataReader.GetOrdinal("IDPRODUTO"));
            entity.QUANTIDADE          = getData.ConvertDBValueToDecimalNullable(DataReader, DataReader.GetOrdinal("QUANTIDADE"));
            entity.IDUNIDADE           = getData.ConvertDBValueToInt32Nullable(DataReader, DataReader.GetOrdinal("IDUNIDADE"));
            entity.VALOR            = getData.ConvertDBValueToDecimalNullable(DataReader, DataReader.GetOrdinal("VALOR"));
            entity.IDPRODUTOMAIN    = getData.ConvertDBValueToInt32Nullable(DataReader, DataReader.GetOrdinal("IDPRODUTOMAIN"));
            entity.VALORTOTAL       = getData.ConvertDBValueToDecimalNullable(DataReader, DataReader.GetOrdinal("VALORTOTAL"));
            entity.FLAGEXIBIR       = getData.ConvertDBValueToStringNullable(DataReader, DataReader.GetOrdinal("FLAGEXIBIR"));
            entity.FLAGMATERIAPRIMA = getData.ConvertDBValueToStringNullable(DataReader, DataReader.GetOrdinal("FLAGMATERIAPRIMA"));
            entity.FLAGMETRO2       = getData.ConvertDBValueToStringNullable(DataReader, DataReader.GetOrdinal("FLAGMETRO2"));
            entity.ALTURA           = getData.ConvertDBValueToDecimalNullable(DataReader, DataReader.GetOrdinal("ALTURA"));
            entity.LARGURA          = getData.ConvertDBValueToDecimalNullable(DataReader, DataReader.GetOrdinal("LARGURA"));


            return(entity);
        }
Example #2
0
        public PRODUTOCOMPOSICAOEntity Read(int IDPRODUTOCOMPOSICAO)
        {
            FbDataReader reader = null;

            try
            {
                //Verificando a existência de um transação aberta
                if (dbTransaction != null)
                {
                    if (dbCnn.State == ConnectionState.Closed)
                    {
                        dbCnn.Open();
                    }

                    dbCommand             = new FbCommand("Rea_PRODUTOCOMPOSICAO", dbCnn);
                    dbCommand.Transaction = ((FbTransaction)(dbTransaction));
                }
                else
                {
                    if (dbCnn == null)
                    {
                        dbCnn = ((FbConnection)GetConnectionDB());
                    }

                    if (dbCnn.State == ConnectionState.Closed)
                    {
                        dbCnn.Open();
                    }

                    dbCommand             = new FbCommand("Rea_PRODUTOCOMPOSICAO", dbCnn);
                    dbCommand.Transaction = dbCnn.BeginTransaction(IsolationLevel.ReadCommitted);
                }

                dbCommand.CommandType = CommandType.StoredProcedure;

                dbCommand.Parameters.AddWithValue("@IDPRODUTOCOMPOSICAO", IDPRODUTOCOMPOSICAO);                //PrimaryKey


                reader = dbCommand.ExecuteReader();

                PRODUTOCOMPOSICAOEntity entity = null;
                if (reader.HasRows)
                {
                    while (reader.Read())
                    {
                        entity = FillEntityObject(ref reader);
                    }
                }

                // Deleta reader
                if (reader != null)
                {
                    reader.Close();
                    reader.Dispose();
                }

                // Fecha conexão
                if (dbTransaction == null)
                {
                    dbCommand.Transaction.Commit();
                    if (dbCnn.State == ConnectionState.Open)
                    {
                        dbCnn.Close();
                    }
                }

                return(entity);
            }
            catch (Exception ex)
            {
                // Deleta reader
                if (reader != null)
                {
                    reader.Close();
                    reader.Dispose();
                }

                if (dbTransaction != null)
                {
                    this.RollbackTransaction();
                }
                else
                {
                    if (dbCommand.Transaction != null)
                    {
                        dbCommand.Transaction.Rollback();
                    }
                    if (dbCnn.State == ConnectionState.Open)
                    {
                        dbCnn.Close();
                    }
                }

                throw ex;
            }
        }
Example #3
0
        public int Save(PRODUTOCOMPOSICAOEntity Entity)
        {
            int result = 0;

            try
            {
                //Verificando a existência de um transação aberta
                if (dbTransaction != null)
                {
                    if (dbCnn.State == ConnectionState.Closed)
                    {
                        dbCnn.Open();
                    }

                    dbCommand             = new FbCommand("Sav_PRODUTOCOMPOSICAO", dbCnn);
                    dbCommand.Transaction = ((FbTransaction)(dbTransaction));
                }
                else
                {
                    if (dbCnn == null)
                    {
                        dbCnn = ((FbConnection)GetConnectionDB());
                    }

                    if (dbCnn.State == ConnectionState.Closed)
                    {
                        dbCnn.Open();
                    }

                    dbCommand             = new FbCommand("Sav_PRODUTOCOMPOSICAO", dbCnn);
                    dbCommand.Transaction = dbCnn.BeginTransaction(IsolationLevel.ReadCommitted);
                }

                dbCommand.CommandType = CommandType.StoredProcedure;

                //PrimaryKey com valor igual a null, indica um novo registro,
                //o valor da chave será fornecido pelo banco. Qualquer outro valor indicará edição do registro.
                if (Entity.IDPRODUTOCOMPOSICAO == -1)
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTOCOMPOSICAO", DBNull.Value);
                }
                else
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTOCOMPOSICAO", Entity.IDPRODUTOCOMPOSICAO);
                }


                if (Entity.IDFORNECEDOR != null)
                {
                    dbCommand.Parameters.AddWithValue("@IDFORNECEDOR", Entity.IDFORNECEDOR);                             //ForeignKey
                }
                else
                {
                    dbCommand.Parameters.AddWithValue("@IDFORNECEDOR", DBNull.Value);                             //ForeignKey 5
                }
                if (Entity.IDPRODUTO != null)
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTO", Entity.IDPRODUTO);                             //ForeignKey
                }
                else
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTO", DBNull.Value);                           //ForeignKey 5
                }
                dbCommand.Parameters.AddWithValue("@QUANTIDADE", Entity.QUANTIDADE);                         //Coluna

                if (Entity.IDUNIDADE != null)
                {
                    dbCommand.Parameters.AddWithValue("@IDUNIDADE", Entity.IDUNIDADE);                             //ForeignKey
                }
                else
                {
                    dbCommand.Parameters.AddWithValue("@IDUNIDADE", DBNull.Value);                 //ForeignKey 5
                }
                dbCommand.Parameters.AddWithValue("@VALOR", Entity.VALOR);                         //Coluna

                if (Entity.IDPRODUTOMAIN != null)
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTOMAIN", Entity.IDPRODUTOMAIN);                             //ForeignKey
                }
                else
                {
                    dbCommand.Parameters.AddWithValue("@IDPRODUTOMAIN", DBNull.Value);           //ForeignKey 5
                }
                dbCommand.Parameters.AddWithValue("@VALORTOTAL", Entity.VALORTOTAL);             //Coluna
                dbCommand.Parameters.AddWithValue("@FLAGEXIBIR", Entity.FLAGEXIBIR);             //Coluna
                dbCommand.Parameters.AddWithValue("@FLAGMATERIAPRIMA", Entity.FLAGMATERIAPRIMA); //Coluna
                dbCommand.Parameters.AddWithValue("@FLAGMETRO2", Entity.FLAGMETRO2);             //Coluna
                dbCommand.Parameters.AddWithValue("@ALTURA", Entity.ALTURA);                     //Coluna
                dbCommand.Parameters.AddWithValue("@LARGURA", Entity.LARGURA);                   //Coluna



                //Retorno da Procedure
                FbParameter returnValue;
                returnValue = dbCommand.CreateParameter();

                dbCommand.Parameters["@IDPRODUTOCOMPOSICAO"].Direction = ParameterDirection.InputOutput;


                //Executando consulta
                dbCommand.ExecuteNonQuery();

                result = int.Parse(dbCommand.Parameters["@IDPRODUTOCOMPOSICAO"].Value.ToString());


                if (dbTransaction == null)
                {
                    dbCommand.Transaction.Commit();
                    dbCnn.Close();
                }
            }
            catch (Exception ex)
            {
                if (dbTransaction != null)
                {
                    this.RollbackTransaction();
                }
                else
                {
                    if (dbCommand.Transaction != null)
                    {
                        dbCommand.Transaction.Rollback();
                    }
                    if (dbCnn.State == ConnectionState.Open)
                    {
                        dbCnn.Close();
                    }
                }

                throw ex;
            }

            return(result);
        }