Ejemplo n.º 1
0
        public void ABCPRODUCTOS(char Op, Pro.PRODUCTOS PRODUCTOS)
        {
            const string querySql = "Pro.prPRODUCTOS";
            int          IntReturn;

            try
            {
                using (SqlConnection connection = _objPersistencia.GetSqlConnection())
                {
                    connection.Open();

                    using (SqlCommand sqlCmnd = _objPersistencia.GetSqlCommand(connection, querySql, CommandType.StoredProcedure))
                    {
                        sqlCmnd.Parameters.AddWithValue("@Op", Op);
                        sqlCmnd.Parameters.AddWithValue("@IdProducto", PRODUCTOS.IdProducto);
                        sqlCmnd.Parameters.AddWithValue("@IdFamilia", PRODUCTOS.IdFamilia);
                        sqlCmnd.Parameters.AddWithValue("@IdConfeccion", PRODUCTOS.IdConfeccion);
                        sqlCmnd.Parameters.AddWithValue("@Producto", PRODUCTOS.Producto);
                        sqlCmnd.Parameters.AddWithValue("@Codigo", PRODUCTOS.Codigo);
                        sqlCmnd.Parameters.AddWithValue("@Activo", PRODUCTOS.Activo);

                        // Ejecucion del sqlCommand
                        using (SqlDataReader reader = sqlCmnd.ExecuteReader())
                        {
                            if (!reader.Read())
                            {
                                throw new Exception("La ejecución del Store Procedure no arrojó ningun dato");
                            }

                            // Verificamos el resultado de la ejecucion de sp 0 = correcto y 1 existe algun error
                            IntReturn = (int)reader["Result"];

                            if (IntReturn >= 1)
                            {
                                throw new Exception(reader["MensajeError"].ToString());
                            }
                            if (IntReturn == 1)
                            {
                                throw new Exception($"{reader["MensajeError"]}\n\nSP: {querySql}");
                            }

                            // Asignar el Id del Producto
                            PRODUCTOS.IdProducto = (int)reader["Ident"];

                            reader.Close();
                        }

                        connection.Close();
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
Ejemplo n.º 2
0
 public void ABCPRODUCTOS(char Op, Pro.PRODUCTOS PRODUCTOS)
 {
     _objAdProductos.ABCPRODUCTOS(Op, PRODUCTOS);
 }