protected bool TieneRelacionesElProducto(string CadenaProductoId) { DataSet ProductoResultado = new DataSet(); AlmacenAcceso AlmacenAcceso = new AlmacenAcceso(); ProductoResultado = AlmacenAcceso.SeleccionarRelacionesProducto(CadenaProductoId, SeleccionarConexion(ConstantePrograma.DefensoriaDB_Almacen)); if (AlmacenAcceso.ErrorId != 0) { _ErrorId = AlmacenAcceso.ErrorId; _DescripcionError = AlmacenAcceso.DescripcionError; return(false); } if (ProductoResultado.Tables.Count == 0) { return(false); } if (ProductoResultado.Tables[0].Rows.Count == 0) { return(false); } _OrigenError = ProductoResultado.Tables[0].Rows[0]["TablaRelacionada"].ToString(); return(true); }
/// <summary> /// Busca la cantidad máxima permitida para la requisición de un producto. /// </summary> /// <returns>Máximo permitido.</returns> public int SeleccionarProductoMaximoPermitido(string ProductoId) { string CadenaConexion = string.Empty; AlmacenAcceso ProductoAcceso = new AlmacenAcceso(); CadenaConexion = SeleccionarConexion(ConstantePrograma.DefensoriaDB_Almacen); _ResultadoDatos = ProductoAcceso.SeleccionarProductoMaximoPermitido(ProductoId, CadenaConexion); if (ProductoAcceso.ErrorId != 0) { _ErrorId = ProductoAcceso.ErrorId; _DescripcionError = ProductoAcceso.DescripcionError; return(0); } if (_ResultadoDatos.Tables[0].Rows.Count == 0) { _ErrorId = (int)TextoError.Requisicion.ProductoNoEncontrado; _DescripcionError = TextoError.ProductoNoEncontrado; return(0); } return(int.Parse(_ResultadoDatos.Tables[0].Rows[0]["Maximo"].ToString())); }
private void EliminarProducto(SqlConnection Conexion, SqlTransaction Transaccion, string CadenaProductoId) { AlmacenAcceso AlmacenAccesoObjeto = new AlmacenAcceso(); AlmacenAccesoObjeto.EliminarProducto(Conexion, Transaccion, CadenaProductoId); _ErrorId = AlmacenAccesoObjeto.ErrorId; _DescripcionError = AlmacenAccesoObjeto.DescripcionError; }
public ResultadoEntidad SeleccionarProductoparaEditar(AlmacenEntidad AlmacenObjetoEntidad) { string CadenaConexion = string.Empty; ResultadoEntidad Resultado = new ResultadoEntidad(); AlmacenAcceso AlmacenAccesoObjeto = new AlmacenAcceso(); CadenaConexion = SeleccionarConexion(ConstantePrograma.DefensoriaDB_Almacen); Resultado = AlmacenAccesoObjeto.SeleccionarProductoParaEditar(AlmacenObjetoEntidad, CadenaConexion); return(Resultado); }
public ResultadoEntidad GuardarProducto(AlmacenEntidad AlmacenObjetoEntidad) { string CadenaConexion = string.Empty; ResultadoEntidad Resultado = new ResultadoEntidad(); ResultadoEntidad ResultadoValidacion = new ResultadoEntidad(); AlmacenAcceso AlmacenAcceso = new AlmacenAcceso(); SqlTransaction Transaccion; SqlConnection Conexion = new SqlConnection(SeleccionarConexion(ConstantePrograma.DefensoriaDB_Almacen)); CadenaConexion = SeleccionarConexion(ConstantePrograma.DefensoriaDB_Almacen); // Si es una actualización se lleva a cabo sin transacción if (AlmacenObjetoEntidad.ProductoId != "") { Resultado = AlmacenAcceso.ActualizarProducto(AlmacenObjetoEntidad, CadenaConexion); return(Resultado); } if (BuscarProductoDuplicada(AlmacenObjetoEntidad)) { Resultado.ErrorId = (int)ConstantePrograma.Producto.ProductoTieneRegistroDuplicado; Resultado.DescripcionError = TextoError.ProductoConNombreDuplicado; return(Resultado); } // Si es un producto nuevo hay que manejar transacción Conexion.Open(); Transaccion = Conexion.BeginTransaction(); try { AlmacenObjetoEntidad.ProductoId = Guid.NewGuid().ToString(); // Primero se guarda la información del producto Resultado = AlmacenAcceso.InsertarProducto(Conexion, Transaccion, AlmacenObjetoEntidad); if (Resultado.ErrorId != (int)ConstantePrograma.Producto.ProductoGuardadoCorrectamente) { Transaccion.Rollback(); Conexion.Close(); return(Resultado); } // Luego la información de la existencia AlmacenAcceso.InsertarProductoExistencia(Conexion, Transaccion, AlmacenObjetoEntidad); if (AlmacenAcceso.ErrorId == 0) { Transaccion.Commit(); } else { Transaccion.Rollback(); Resultado.ErrorId = AlmacenAcceso.ErrorId; Resultado.DescripcionError = AlmacenAcceso.DescripcionError; } Conexion.Close(); return(Resultado); } catch (Exception Exception) { Resultado.ErrorId = (int)TextoError.Error.Generico; Resultado.DescripcionError = Exception.Message; if (Conexion.State == ConnectionState.Open) { Transaccion.Rollback(); Conexion.Close(); } return(Resultado); } }