private void BindGridPrevendidos(int currentPage) { DataSet ds = new DataSet(); SisPackController.AdministrarGrillas.Configurar(this.hgCodigoBarras, "UnidadVentaID", this.CantidadOpciones); hgCodigoBarras.AllowPaging = false; DateTime fechaDesde = this.txtFechaDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaDesde.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"); DateTime fechaHasta = this.txtFechaHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaHasta.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"); // obtengo las unidades de ventas ICodigoBarras codigoBarras = CodigoBarrasFactory.GetCodigoBarras(); codigoBarras.UnidadVentaID = Utiles.Validaciones.obtieneEntero(this.ddlUnidadVenta.SelectedValue); codigoBarras.ConceptoFacturacionID = Utiles.Validaciones.obtieneEntero(this.ddlConceptoFacturacion.SelectedValue); int categoriaUVentaID = Utiles.Validaciones.obtieneEntero(this.ddlCategoriaUVenta.SelectedValue); int categoriaConceptoFacturacionID = Utiles.Validaciones.obtieneEntero(this.ddlCategoriaConceptoFacturacion.SelectedValue); DsUnidadesVenta dsUnidadVenta = codigoBarras.GetUnidadVentaCodigoBarrasPrevendido(fechaDesde, fechaHasta, categoriaUVentaID, categoriaConceptoFacturacionID); ds.Tables.Add(dsUnidadVenta.Datos.Clone()); ds.Tables[0].TableName = "UnidadVenta"; foreach (System.Data.DataRow row in dsUnidadVenta.Datos.Rows) { ds.Tables["UnidadVenta"].ImportRow(row); } // obtengo las guias por cada unidad de venta DsTarifaCodigoBarrasGuia dsTarifas = codigoBarras.GetTarifasCodigoBarrasGuia(fechaDesde, fechaHasta); ds.Tables.Add(dsTarifas.Datos.Clone()); ds.Tables[1].TableName = "Tarifas"; foreach (System.Data.DataRow row in dsTarifas.Datos.Rows) { ds.Tables["Tarifas"].ImportRow(row); } // obtengo los codigos de barras utilizados por guia DsTarifaCodigoBarrasGuia dsDetalleCodigos = codigoBarras.GetDetalleCodigoBarrasGuia(fechaDesde, fechaHasta); ds.Tables.Add(dsDetalleCodigos.Datos.Clone()); ds.Tables[2].TableName = "DetalleCodigos"; foreach (System.Data.DataRow row in dsDetalleCodigos.Datos.Rows) { ds.Tables["DetalleCodigos"].ImportRow(row); } // relaciono la tabla "UnidadVenta" con "Tarifas", a través de UnidadVentaID DataColumn dc1 = ds.Tables[0].Columns["UnidadVentaID"]; DataColumn dc2 = ds.Tables[1].Columns["UnidadVentaID"]; DataRelation dr = new DataRelation("UnidadVentaID_Tarifas", dc1, dc2, false); ds.Relations.Add(dr); // relaciono la tabla "Tarifas" con "DetalleCodigos", a través de GuiaID dc1 = ds.Tables[1].Columns["GuiaID"]; dc2 = ds.Tables[2].Columns["GuiaID"]; dr = new DataRelation("GuiaID_Detalle", dc1, dc2, false); ds.Relations.Add(dr); this.hgCodigoBarras.DataSource = ds; this.hgCodigoBarras.DataMember = "UnidadVenta"; this.hgCodigoBarras.DataBind(); }