/// <summary> /// Obtiene los Valores para Mostrarlos en el /// Grid de Ayuda /// </summary> /// <param name="inicio"></param> /// <param name="limite"></param> public void ObtenerValoresAyudaCamposInfo(int inicio, int limite) { var tiposParametros = new List <Type>(); var valoresParametros = new List <Object>(); try { if (grdDatos.Items.Count > 0) { grdDatos.ItemsSource = null; grdDatos.Items.Clear(); } var filtro = txtValorFiltro.Text; var metodoInvocacion = MetodoPaginado; var paginacionInfo = new PaginacionInfo { Inicio = inicio, Limite = limite }; AuxAyuda.AgregarFiltros(false, paginacionInfo, tiposParametros, valoresParametros); var propiedad = String.Empty; for (int indexCamposInfo = 0; indexCamposInfo < CamposInfo.Count; indexCamposInfo++) { var indice = CamposInfo[indexCamposInfo].IndexOf("ID"); if (indice < 0) { propiedad = CamposInfo[indexCamposInfo]; } } Info.GetType().GetProperty(propiedad).SetValue(Info, filtro, null); AuxAyuda.AgregarFiltros(false, Info, tiposParametros, valoresParametros); object resultadoInvocacion = null; var ayudaTipo = AyudaPL.GetType(); MethodInfo metodo; if (Dependencias == null) { metodo = ayudaTipo.GetMethod(metodoInvocacion, tiposParametros.ToArray()); if (metodo != null) { resultadoInvocacion = metodo.Invoke(AyudaPL, valoresParametros.ToArray()); } } else { AuxAyuda.AgregarFiltros(false, Dependencias, tiposParametros, valoresParametros); metodo = ayudaTipo.GetMethod(metodoInvocacion, tiposParametros.ToArray()); if (metodo != null) { resultadoInvocacion = metodo.Invoke(AyudaPL, valoresParametros.ToArray()); } } var resultadoInfo = (ResultadoInfo <T>)resultadoInvocacion; if (resultadoInfo != null && resultadoInfo.Lista != null && resultadoInfo.Lista.Count > 0) { pagControl.TotalRegistros = resultadoInfo.TotalRegistros; AsignarValoresGridCamposInfo(resultadoInfo.Lista); } else { pagControl.TotalRegistros = 0; } } catch (ExcepcionGenerica) { SkMessageBox.Show(this, SuKarne.Controls.Properties.Resources.Ayuda_MensajeError, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(this, SuKarne.Controls.Properties.Resources.Ayuda_MensajeError, MessageBoxButton.OK, MessageImage.Error); } }
/// <summary> /// Obtiene los Valores para Mostrarlos en el /// Grid de Ayuda /// </summary> /// <param name="inicio"></param> /// <param name="limite"></param> public void ObtenerValoresAyuda(int inicio, int limite) { var tiposParametros = new List <Type>(); var valoresParametros = new List <Object>(); try { if (grdDatos.Items.Count > 0) { grdDatos.ItemsSource = null; grdDatos.Items.Clear(); } var filtro = txtValorFiltro.Text; if (string.Compare(filtro.Trim(), descripcionAnterior.Trim(), StringComparison.CurrentCultureIgnoreCase) != 0) { descripcionAnterior = filtro; pagControl.Inicio = 1; inicio = 1; } var metodoInvocacion = AuxAyuda.ObtenerMetodoEjecutar(Info, PropiedadDescripcion, true, AtributoDescripcion); var paginacionInfo = new PaginacionInfo { Inicio = inicio, Limite = limite }; AuxAyuda.AgregarFiltros(false, paginacionInfo, tiposParametros, valoresParametros); try { Info.GetType().GetProperty(PropiedadDescripcion).SetValue(Info, filtro, null); } catch (Exception) { Info.GetType().GetProperty(PropiedadDescripcion).SetValue(Info, 0, null); } AuxAyuda.AgregarFiltros(false, Info, tiposParametros, valoresParametros); object resultadoInvocacion = null; var ayudaTipo = AyudaPL.GetType(); MethodInfo metodo; if (Dependencias == null) { metodo = ayudaTipo.GetMethod(metodoInvocacion, tiposParametros.ToArray()); if (metodo != null) { resultadoInvocacion = metodo.Invoke(AyudaPL, valoresParametros.ToArray()); } } else { AuxAyuda.AgregarFiltros(false, Dependencias, tiposParametros, valoresParametros); metodo = ayudaTipo.GetMethod(metodoInvocacion, tiposParametros.ToArray()); if (metodo != null) { resultadoInvocacion = metodo.Invoke(AyudaPL, valoresParametros.ToArray()); } } var resultadoInfo = (ResultadoInfo <T>)resultadoInvocacion; if (resultadoInfo != null && resultadoInfo.Lista != null && resultadoInfo.Lista.Count > 0) { pagControl.TotalRegistros = resultadoInfo.TotalRegistros; grdDatos.ItemsSource = resultadoInfo.Lista; } else { pagControl.TotalRegistros = 0; } } catch (ExcepcionGenerica) { SkMessageBox.Show(this, SuKarne.Controls.Properties.Resources.Ayuda_MensajeError, MessageBoxButton.OK, MessageImage.Error); } catch (Exception ex) { Logger.Error(ex); SkMessageBox.Show(this, SuKarne.Controls.Properties.Resources.Ayuda_MensajeError, MessageBoxButton.OK, MessageImage.Error); } }