private void BindGrid() { try { #region Validadores CustomValidator validarCheck = (CustomValidator)GenerarValidadores.Custom(); validarCheck.ServerValidate += new ServerValidateEventHandler(ValidateCodigo); phCodigo.Controls.Add(validarCheck); CustomValidator validarRango = (CustomValidator)GenerarValidadores.Custom(); validarRango.ServerValidate += new ServerValidateEventHandler(ValidateFecha); phFechaHasta.Controls.Add(validarRango); Page.Validate(); if (!Page.IsValid) { return; } #endregion DsReporteDisponibilidadCB ds = new DsReporteDisponibilidadCB(); AdministrarGrillas.Configurar(dtgCB, "EntidadID", CantidadOpciones, true, false); ICodigoBarras reporte = CodigoBarrasFactory.GetCodigoBarras(); reporte.UnidadVentaID = Utiles.Validaciones.obtieneEntero(ddlUnidad.SelectedValue); reporte.ConceptoFacturacionID = Utiles.Validaciones.obtieneEntero(ddlConcepto.SelectedValue); if (rbtAgencia.Checked) { reporte.AgenciaID = Utiles.Validaciones.obtieneEntero(Agencia1.AgenciaID); ds = reporte.ReporteDisponibilidadCBAgencia(Tipo(), Utiles.Validaciones.obtieneEntero(txtMinimo.Text), Convert.ToDateTime(txtFechaDesde.Text), Convert.ToDateTime(txtFechaHasta.Text)); } else if (rbtCliente.Checked) { reporte.ClienteID = Utiles.Validaciones.obtieneEntero(Cliente1.ClienteID); ds = reporte.ReporteDisponibilidadCBCliente(Tipo(), Utiles.Validaciones.obtieneEntero(txtMinimo.Text), Convert.ToDateTime(txtFechaDesde.Text), Convert.ToDateTime(txtFechaHasta.Text)); } DataSet dsHG = new DataSet(); dsHG.Tables.Add(ds.Datos.Clone()); dsHG.Tables[0].TableName = "Cabecera"; foreach (System.Data.DataRow row in ds.Datos.Rows) { dsHG.Tables["Cabecera"].ImportRow(row); } dsHG.Tables.Add(ds.Detalle.Clone()); dsHG.Tables[1].TableName = "Detalle"; foreach (System.Data.DataRow row in ds.Detalle.Rows) { dsHG.Tables["Detalle"].ImportRow(row); } DataColumn dc1 = dsHG.Tables[0].Columns["EntidadID"]; DataColumn dc2 = dsHG.Tables[1].Columns["EntidadID"]; DataRelation dr = new DataRelation("Reporte_Disponibilidad", dc1, dc2, false); dsHG.Relations.Add(dr); dtgCB.DataSource = dsHG; dtgCB.DataMember = "Cabecera"; dtgCB.CurrentPageIndex = Utiles.Validaciones.obtieneEntero(txtPagina.Text); dtgCB.DataBind(); } catch (Exception ex) { ((ErrorWeb)phErrores.Controls[0]).setMensaje(ex.Message); } }