private void Buscar()
        {
            int total = 0;

            try
            {
                IAgencia agencia         = AgenciaFactory.GetAgencia();
                DsAgenciasNroSucursal ds = agencia.GetAgenciasNroSucursalDataSet();

                string filtro = "SucursalDGI LIKE '" + this.sucursal + "%' AND RazonSocial LIKE '" + this.razonSocial + "%'";
                //Agregar que si no le paso una agencia actual, no la tenga que buscar.
                if (this.filtroEspecial == NegociosSisPackInterface.SisPack.TipoAgencia.Cabecera.ToString())
                {
                    if (this.agenciaActual != null && this.agenciaActual.Length > 0)
                    {
                        filtro += " AND EsCabecera = true AND AgenciaID <> " + this.agenciaActual;
                    }
                    else
                    {
                        filtro += " AND EsCabecera = true";
                    }
                }
                else if (this.filtroEspecial == NegociosSisPackInterface.SisPack.TipoAgencia.Madre.ToString())
                {
                    filtro += " AND (AgenciaMadre IS NULL OR AgenciaMadre <> " + this.agenciaActual + " ) AND AgenciaID <> " + this.agenciaActual;
                }

                DsAgenciasNroSucursal.DatosRow[] drLista = (DsAgenciasNroSucursal.DatosRow[])ds.Datos.Select(filtro);
                total = drLista.Length;

                if (total > 0)
                {
                    if (total == 1)
                    {
                        DsAgenciasNroSucursal.DatosRow dr = drLista[0];
                        this.txtAgenciaID.Text   = dr.AgenciaID.ToString();
                        this.txtSucursal.Text    = dr.SucursalDGI;
                        this.txtRazonSocial.Text = dr.RazonSocial;
                        this.txtErrorMsg.Text    = "";
                        this.txtOpen.Text        = "";
                    }
                    else
                    {
                        this.txtSucursal.Text      = this.sucursal;
                        this.txtRazonSocial.Text   = this.razonSocial;
                        this.txtOpen.Text          = "S";
                        this.txtFiltro.Text        = this.filtroEspecial;
                        this.txtAgenciaActual.Text = this.agenciaActual;
                    }
                }
                else
                {
                    this.txtAgenciaID.Text = "";
                    this.txtErrorMsg.Text  = "No se encontraron datos.";
                    this.txtOpen.Text      = "";
                }
            }
            catch (Exception ex)
            {
                this.txtErrorMsg.Text = "Error al consultar datos de agencias: " + ex.Message;
            }
        }