Пример #1
0
    protected void Page_Load(object sender, EventArgs e)
    {
        Master.Page.Title = "... defina un filtro y haga un click en Aplicar Filtro para aplicarlo";

        ErrMessage_Span.InnerHtml        = "";
        ErrMessage_Span.Style["display"] = "none";

        if (!User.Identity.IsAuthenticated)
        {
            FormsAuthentication.SignOut();
            return;
        }

        if (!Page.IsPostBack)
        {
            // usamos una clase para construir una lista con las compañías (Contab) que se han asignado al usuario
            ConstruirListaCompaniasAsignadas listaCiasContabAsignadas = new ConstruirListaCompaniasAsignadas();
            this.Sql_CuentasBancarias_Cia_Numeric.DataSource = listaCiasContabAsignadas.GetListaCompaniasAsignadas();

            //  pareciera que si no hacemos el databind para los listboxes aqu�, la clase que regresa el state
            //  encuentra estos controles sin sus datos
            this.Sql_CuentasBancarias_Cia_Numeric.DataBind();
            this.Sql_CuentasBancarias_CuentaInterna_Numeric.DataBind();
            Sql_CuentasBancarias_CuentaInterna_Numeric.DataBind();

            //  intentamos recuperar el state de esta página; en general, lo intentamos con popups filtros

            if (!(Membership.GetUser().UserName == null))
            {
                KeepPageState MyKeepPageState = new KeepPageState(Membership.GetUser().UserName, this.GetType().Name.ToString());
                MyKeepPageState.ReadStateFromFile(this, this.Controls);
                MyKeepPageState = null;
            }

            HtmlGenericControl MyHtmlH2;
            MyHtmlH2 = (HtmlGenericControl)Master.FindControl("PageTitle_TableCell");
            if (!(MyHtmlH2 == null))
            {
                MyHtmlH2.InnerHtml = "... indique un criterio de selección y haga un click en <b><em>Aplicar filtro</em></b>";
            }
        }
    }
Пример #2
0
    private void SeleccionarCuentasBancarias()
    {
        // para mostrar en el ListBox de cuentas bancarias solo las que correspondan a las cias y monedas
        // seleccionadas
        String MyWhereString = "";

        foreach (ListItem MyListItem in Sql_CuentasBancarias_Cia_Numeric.Items)
        {
            if (MyListItem.Selected)
            {
                if (MyWhereString == "")
                {
                    MyWhereString = " CuentasBancarias.Cia In (" + MyListItem.Value;
                }
                else
                {
                    MyWhereString = MyWhereString + ", " + MyListItem.Value;
                }
            }
        }

        bool bFirstTime = true;

        foreach (ListItem MyListItem in Sql_CuentasBancarias_Moneda_Numeric.Items)
        {
            if (MyListItem.Selected)
            {
                if (MyWhereString == "")
                {
                    MyWhereString = " CuentasBancarias.Moneda In (" + MyListItem.Value;
                    bFirstTime    = false;
                }
                else
                if (bFirstTime)
                {
                    MyWhereString += ") And CuentasBancarias.Moneda In (" + MyListItem.Value;
                    bFirstTime     = false;
                }
                else
                {
                    MyWhereString = MyWhereString + ", " + MyListItem.Value;
                }
            }
        }

        if (MyWhereString != "")
        {
            MyWhereString = MyWhereString + ")";
        }
        else
        {
            MyWhereString = "1 = 1";
        }

        // nótese como reconstruímos todo el select command del listbox de monedas

        CuentasBancarias_SqlDataSource.SelectCommand =
            "SELECT CuentasBancarias.CuentaInterna, Bancos.Abreviatura + ' - ' + Monedas.Simbolo + ' - ' + " +
            "CuentasBancarias.CuentaBancaria + ' - ' + Companias.Abreviatura AS NombreCuentaBancaria " +
            "FROM CuentasBancarias Inner Join Agencias On CuentasBancarias.Agencia = Agencias.Agencia " +
            "INNER JOIN Bancos ON Agencias.Banco = Bancos.Banco INNER JOIN " +
            "Monedas ON CuentasBancarias.Moneda = Monedas.Moneda INNER JOIN Companias ON " +
            "CuentasBancarias.Cia = Companias.Numero WHERE (Bancos.NombreCorto IS NOT NULL) AND " +
            "(Monedas.Simbolo IS NOT NULL) AND (CuentasBancarias.CuentaBancaria IS NOT NULL) And " +
            "(Estado = 'AC') And " + MyWhereString + " " +
            "ORDER BY Bancos.NombreCorto, Monedas.Simbolo, CuentasBancarias.CuentaBancaria";

        Sql_CuentasBancarias_CuentaInterna_Numeric.DataBind();
    }