Exemplo n.º 1
0
        private void ExecuteCommands()
        {
            try
            {
                for (int i = 0; i < Request.Form.Count; i++)
                {
                    string key = Request.Form.Keys[i];
                    string val = Request.Form[i];

                    if (key.StartsWith(_tabView.UniqueID + ":"))                    // TABVIEW
                    {
                        int    index  = key.LastIndexOf(":") + 1;
                        string tabCmd = key.Substring(index, key.Length - index);

                        _contr.Transfer(tabCmd);
                        break;
                    }
                    else if (key == _tableControl.UniqueID + ":btnPivot")
                    {
                        _contr.Pivot();
                        break;
                    }
                    else if (key == _tableControl.UniqueID + ":btnSort")
                    {
                        _contr.SetSort(GetSelectedMemberIdentifiers());
                        break;
                    }
                    else if (key == _tableControl.UniqueID + ":btnDrillDown")
                    {
                        _contr.DrillDown(GetSelectedMemberIdentifiers());
                        break;
                    }
                    else if (key == _tableControl.UniqueID + ":btnDrillUp")
                    {
                        _contr.DrillUp(GetSelectedMemberIdentifiers());
                        break;
                    }
                    else if (key == _tableControl.UniqueID + ":btnRemove")
                    {
                        _contr.Remove(GetSelectedMemberIdentifiers());
                        break;
                    }
                    else if (key.StartsWith(_tableControl.UniqueID + ":tbl_avg:"))
                    {
                        int    hierIndex = key.LastIndexOf(":") + 1;
                        string hierUn    = key.Substring(hierIndex, key.Length - hierIndex);

                        if (key.Substring(hierIndex - 4, 3) == "off")
                        {
                            _contr.RemoveVisualAggr(hierUn, "AVG");
                        }
                        else
                        {
                            _contr.AddVisualAggr(hierUn, "AVG");
                        }

                        break;
                    }
                    else if (key.StartsWith(_tableControl.UniqueID + ":tbl_sum:"))
                    {
                        int    hierIndex = key.LastIndexOf(":") + 1;
                        string hierUn    = key.Substring(hierIndex, key.Length - hierIndex);

                        if (key.Substring(hierIndex - 4, 3) == "off")
                        {
                            _contr.RemoveVisualAggr(hierUn, "SUM");
                        }
                        else
                        {
                            _contr.AddVisualAggr(hierUn, "SUM");
                        }

                        break;
                    }
                    else if (key.StartsWith(_tableControl.UniqueID + ":tbl_min:"))
                    {
                        int    hierIndex = key.LastIndexOf(":") + 1;
                        string hierUn    = key.Substring(hierIndex, key.Length - hierIndex);

                        if (key.Substring(hierIndex - 4, 3) == "off")
                        {
                            _contr.RemoveVisualAggr(hierUn, "MIN");
                        }
                        else
                        {
                            _contr.AddVisualAggr(hierUn, "MIN");
                        }

                        break;
                    }
                    else if (key.StartsWith(_tableControl.UniqueID + ":tbl_max:"))
                    {
                        int    hierIndex = key.LastIndexOf(":") + 1;
                        string hierUn    = key.Substring(hierIndex, key.Length - hierIndex);

                        if (key.Substring(hierIndex - 4, 3) == "off")
                        {
                            _contr.RemoveVisualAggr(hierUn, "MAX");
                        }
                        else
                        {
                            _contr.AddVisualAggr(hierUn, "MAX");
                        }

                        break;
                    }
                    else if (key.StartsWith(this._sliceControl.UniqueID + ":slc_del:"))
                    {
                        int    hierIndex = key.LastIndexOf(":") + 1;
                        string hierUn    = key.Substring(hierIndex, key.Length - hierIndex);

                        _contr.SetDefaultMember(hierUn);

                        break;
                    }
                }
            }
            catch (Exception exc)
            {
                this.ShowException(exc);
            }


            // save state
            _report.SaveState();
        }