/// <summary> /// Método para guardar los valores del contexto /// </summary> private void Guardar() { bool guardar = ValidaGuardar(); if (guardar) { try { var cuentaAlmacenSubFamiliaPL = new CuentaAlmacenSubFamiliaBL(); cuentaAlmacenSubFamiliaPL.Guardar(Contexto); SkMessageBox.Show(this, Properties.Resources.GuardadoConExito, MessageBoxButton.OK, MessageImage.Correct); if (Contexto.CuentaAlmacenSubFamiliaID != 0) { confirmaSalir = false; Close(); } else { InicializaContexto(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(this, Properties.Resources.CuentaAlmacenSubFamilia_ErrorGuardar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(this, Properties.Resources.CuentaAlmacenSubFamilia_ErrorGuardar, MessageBoxButton.OK, MessageImage.Error); } } }
/// <summary> /// Obtiene la lista para mostrar en el grid /// </summary> private void ObtenerListaCuentaAlmacenSubFamilia(int inicio, int limite) { try { if (ucPaginacion.ContextoAnterior != null) { bool contextosIguales = ucPaginacion.CompararObjetos(Contexto, ucPaginacion.ContextoAnterior); if (!contextosIguales) { ucPaginacion.Inicio = 1; inicio = 1; } } var cuentaAlmacenSubFamiliaBL = new CuentaAlmacenSubFamiliaBL(); CuentaAlmacenSubFamiliaInfo filtros = ObtenerFiltros(); var pagina = new PaginacionInfo { Inicio = inicio, Limite = limite }; ResultadoInfo <CuentaAlmacenSubFamiliaInfo> resultadoInfo = cuentaAlmacenSubFamiliaBL.ObtenerPorPagina(pagina, filtros); if (resultadoInfo != null && resultadoInfo.Lista != null && resultadoInfo.Lista.Count > 0) { gridDatos.ItemsSource = resultadoInfo.Lista; ucPaginacion.TotalRegistros = resultadoInfo.TotalRegistros; } else { ucPaginacion.TotalRegistros = 0; ucPaginacion.AsignarValoresIniciales(); gridDatos.ItemsSource = new List <CuentaAlmacenSubFamilia>(); } } catch (ExcepcionGenerica) { SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CuentaAlmacenSubFamilia_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(Application.Current.Windows[ConstantesVista.WindowPrincipal], Properties.Resources.CuentaAlmacenSubFamilia_ErrorBuscar, MessageBoxButton.OK, MessageImage.Error); } }
/// <summary> /// Metodo que valida los datos para guardar /// </summary> /// <returns></returns> private bool ValidaGuardar() { bool resultado = true; string mensaje = string.Empty; try { if (string.IsNullOrWhiteSpace(txtCuentaAlmacenSubFamiliaID.Text)) { resultado = false; mensaje = Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgCuentaAlmacenSubFamiliaIDRequerida; txtCuentaAlmacenSubFamiliaID.Focus(); } else if (Contexto.Almacen == null || Contexto.Almacen.AlmacenID == 0) { resultado = false; mensaje = Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgAlmacenIDRequerida; skAyudaAlmacen.AsignarFoco(); } else if (Contexto.SubFamilia == null || Contexto.SubFamilia.SubFamiliaID == 0) { resultado = false; mensaje = Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgSubFamiliaIDRequerida; skAyudaSubFamilia.AsignarFoco(); } else if (Contexto.CuentaSAP == null || Contexto.CuentaSAP.CuentaSAPID == 0) { resultado = false; mensaje = Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgCuentaSAPIDRequerida; skAyudaCuentaSAP.AsignarFoco(); } else if (cmbActivo.SelectedItem == null) { resultado = false; mensaje = Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgActivoRequerida; cmbActivo.Focus(); } else { int cuentaAlmacenSubFamiliaId = Extensor.ValorEntero(txtCuentaAlmacenSubFamiliaID.Text); var cuentaAlmacenSubFamiliaBL = new CuentaAlmacenSubFamiliaBL(); IList <CuentaAlmacenSubFamiliaInfo> cuentasAlmacen = cuentaAlmacenSubFamiliaBL.ObtenerCostosSubFamilia(Contexto.Almacen.AlmacenID); CuentaAlmacenSubFamiliaInfo cuentaAlmacenSubFamilia = cuentasAlmacen.FirstOrDefault( cuenta => cuenta.SubFamilia.SubFamiliaID == Contexto.SubFamilia.SubFamiliaID); if (cuentaAlmacenSubFamilia != null && (cuentaAlmacenSubFamiliaId == 0 || cuentaAlmacenSubFamiliaId != cuentaAlmacenSubFamilia.CuentaAlmacenSubFamiliaID)) { resultado = false; mensaje = string.Format(Properties.Resources.CuentaAlmacenSubFamiliaEdicion_MsgDescripcionExistente, cuentaAlmacenSubFamilia.CuentaAlmacenSubFamiliaID); } } } catch (Exception ex) { throw new ExcepcionDesconocida(MethodBase.GetCurrentMethod(), ex); } if (!string.IsNullOrWhiteSpace(mensaje)) { SkMessageBox.Show(this, mensaje, MessageBoxButton.OK, MessageImage.Warning); } return(resultado); }