private void HGDataBind() { DataSet ds = new DataSet(); SisPackController.AdministrarGrillas.Configurar(this.hgAgencias, "AgenciaID", this.CantidadOpciones); if (Session["DsGuiasPendientesConsul"] == null) { string tipoGuia = this.rbtGuiaA.Checked ? "A" : this.rbtGuiaB.Checked ? "B" : "", sucGuia = this.txtSucGuia.Text != "" ? this.txtSucGuia.Text : string.Empty; DateTime fechaEmiDesde = this.txtFechaEmisionDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaEmisionDesde.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"), fechaEmiHasta = this.txtFechaEmisionHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaEmisionHasta.Text) : DateTime.Today, fechaRcpDesde = this.txtFechaRecepcionDesde.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaRecepcionDesde.Text) : Utiles.Fechas.FormatFechaDDMMYYYY("01/01/1900"), fechaRcpHasta = this.txtFechaRecepcionHasta.Text != "" ? Utiles.Fechas.FormatFechaDDMMYYYY(this.txtFechaRecepcionHasta.Text) : DateTime.Today; int valorEstadia = this.txtDiasEstadia.Text != "" ? Convert.ToInt32(this.txtDiasEstadia.Text) : 0, nroGuia = this.txtNroGuia.Text != "" ? Convert.ToInt32(this.txtNroGuia.Text) : 0; IAgencia agencia = AgenciaFactory.GetAgencia(); DsAgencias dsAgencias = agencia.GetAgenciasConGuiasPendDataSet(fechaEmiDesde, fechaEmiHasta, fechaRcpDesde, fechaRcpHasta, tipoGuia, valorEstadia, nroGuia, sucGuia); DsAgencias.DatosRow[] drAgencias; if (!this.txtSucursalDGI.Text.Equals("")) { drAgencias = (DsAgencias.DatosRow[])dsAgencias.Datos.Select("SucursalDGI = '" + this.txtSucursalDGI.Text + "'"); } else { drAgencias = (DsAgencias.DatosRow[])dsAgencias.Datos.Select("", "SucursalDGI"); } ds.Tables.Add(dsAgencias.Tables[0].Clone()); ds.Tables[0].TableName = "Agencias"; foreach (System.Data.DataRow row in drAgencias) { ds.Tables["Agencias"].ImportRow(row); } IGuia guia = GuiaFactory.GetGuia(); guia.TipoGuia = tipoGuia; guia.NroGuia = nroGuia; guia.NroSucursalGuia = sucGuia; DsGuias dsGuias = guia.GetGuiasPendientesDataSet(fechaEmiDesde, fechaEmiHasta, fechaRcpDesde, fechaRcpHasta, valorEstadia); DsGuias dsGuiasAux = new DsGuias(); if (!this.txtSucursalDGI.Text.Equals("")) { agencia.SucursalDGI = this.txtSucursalDGI.Text; agencia.ConsultarBySucursal(); DsGuias.DatosRow[] drGuias = (DsGuias.DatosRow[])dsGuias.Datos.Select("AgenciaDestinoID = " + agencia.AgenciaID); foreach (System.Data.DataRow row in drGuias) { dsGuiasAux.Datos.ImportRow(row); } } else { dsGuiasAux = dsGuias; } ds.Tables.Add(dsGuiasAux.Tables[0].Clone()); ds.Tables[1].TableName = "Guias"; //foreach(System.Data.DataRow row in drGuias) // ds.Tables["Guias"].ImportRow(row); DataColumn colSel = ds.Tables[1].Columns.Add(); colSel.ColumnName = "Selec"; colSel.DataType = typeof(bool); colSel.DefaultValue = true; DataColumn colGuiaOrig = ds.Tables[1].Columns.Add(); colGuiaOrig.ColumnName = "GuiaOriginal1"; colGuiaOrig.DataType = typeof(bool); colGuiaOrig.DefaultValue = true; DataColumn colAAdmin = ds.Tables[1].Columns.Add(); colAAdmin.ColumnName = "AAdmin1"; colAAdmin.DataType = typeof(bool); colAAdmin.DefaultValue = true; int index = 0; foreach (System.Data.DataRow row in dsGuiasAux.Datos.Rows) { ds.Tables["Guias"].ImportRow(row); /*SFE: Modificacion para marcar como devueltas las primeras 50 guias de la lista. Solicitado por Fabian.*/ index = ds.Tables["Guias"].Rows.Count; if (index > 50) { ds.Tables["Guias"].Rows[index - 1]["Selec"] = false; } } DataColumn dc1 = ds.Tables["Agencias"].Columns["AgenciaID"], dc2 = ds.Tables["Guias"].Columns["AgenciaDestinoID"]; DataRelation dr = new DataRelation("GuiasAgencia", dc1, dc2, false); ds.Relations.Add(dr); Session["DsGuiasPendientesConsul"] = ds; } else { ds = (DataSet)Session["DsGuiasPendientesConsul"]; } this.hgAgencias.DataSource = ds; this.hgAgencias.DataMember = "Agencias"; this.hgAgencias.DataBind(); }