Example #1
0
        // Main function of prepairing data for chart
        private static DataTable CreateDataForChart(string rowColumn, List <AvrViewColumn> columns, Dictionary <int, DataRow> rows, AvrView view)
        {
            var rowColAvr = view.GetColumnByOriginalName(rowColumn);
            var ds        = AvrViewHelper.PrepareChartTable(view.LayoutName, columns, rowColAvr);
            var dt        = ds.Tables["Data"];

            if (rows != null && rows.Count > 0)
            {
                // fill rows of table
                dt.BeginLoadData();
                foreach (int i in rows.Keys)
                {
                    DataRow nRow = dt.NewRow();

                    nRow[rowColAvr.UniquePath] = rows[i][rowColumn];

                    FillMapOrChartValues(columns, rows, i, nRow, false);

                    dt.Rows.Add(nRow);
                }
                dt.EndLoadData();
                dt.AcceptChanges();
            }

            return(dt);
        }
Example #2
0
        public static ColumnElement SelectedColBandObject(this AvrView obj)
        {
            AvrViewColumn col = obj.GetColumnByOriginalName(obj.SelectedColBand);

            if (col != null)
            {
                return(new ColumnElement(col));
            }
            AvrViewBand band = obj.GetBandByOriginalName(obj.SelectedColBand);

            if (band != null)
            {
                return(new ColumnElement(band));
            }
            return(new ColumnElement());
        }
Example #3
0
        private static void DisplayAsterisk(AvrView Model, ASPxGridViewTableDataCellEventArgs e)
        {
            if (e.CellValue == null || String.IsNullOrEmpty(e.CellValue.ToString()))
            {
                var col = Model.GetColumnByOriginalName(e.DataColumn.FieldName);
                m_DisplayTextHandler.DisplayAsterisk(col, new WebGridCellDisplayTextEventArgs(e));

                /*if (e.DataColumn.FieldName.Substring(0, 15) == "AggregateColumn")
                 * {
                 *  e.Cell.Text = Translator.GetMessageString("strErrorCustomAggregate");
                 * }
                 * else if (BaseSettings.ShowAvrAsterisk)
                 * {
                 *  e.Cell.Text = BaseSettings.Asterisk;
                 * }*/
            }
        }
Example #4
0
        public static GridViewSettings CreateGridViewSettings(AvrView Model)
        {
            GridViewSettings settings = new GridViewSettings();
            var CanUpdate             = !Model.IsReadOnly && eidss.model.Core.AvrPermissions.UpdatePermission;

            settings.Styles.Cell.Wrap = DefaultBoolean.True;

            settings.Name = "layoutViewGrid";
            settings.CallbackRouteValues = new { Controller = "ViewLayout", Action = "ViewGridView", layoutId = Model.LayoutID };
            settings.KeyFieldName        = "ID";

            // Behavior
            settings.SettingsBehavior.AllowSort = true;
            settings.SettingsBehavior.EnableCustomizationWindow = CanUpdate;
            settings.SettingsBehavior.ColumnResizeMode          = ColumnResizeMode.Control;
            settings.SettingsBehavior.AllowDragDrop             = CanUpdate;
            settings.SettingsBehavior.AllowSelectByRowClick     = true;
            settings.SettingsBehavior.AllowSelectSingleRowOnly  = false;

            // Context menu
            settings.SettingsContextMenu.Enabled          = true;
            settings.SettingsContextMenu.EnableColumnMenu = DevExpress.Utils.DefaultBoolean.True;
            settings.SettingsContextMenu.EnableRowMenu    = DevExpress.Utils.DefaultBoolean.False;
            settings.ClientSideEvents.ContextMenu         = "viewGridForm.grid_OnContextMenu";

            /*settings.FillContextMenuItems = (sender, e) => {
             *  e.Items.Add(EidssMessages.Get("RenameColumnBand"), "RenameColumnBand");
             *  e.Items.Add(EidssMessages.Get("btAddAggregateColumn"), "btAddAggregateColumn");
             *  // now we can't find which column we clicked - we cant differentiate menu for aggregate columns
             *  ASPxGridView grid = (ASPxGridView)sender;
             *  e.Items.Add(EidssMessages.Get("DeleteAggregateColumn"), "DeleteAggregateColumn");
             * };*/

            // show
            settings.Width = Unit.Percentage(100);
            settings.SettingsPager.Mode               = GridViewPagerMode.ShowPager;
            settings.SettingsPager.PageSize           = 15;
            settings.Settings.HorizontalScrollBarMode = ScrollBarMode.Visible;
            settings.Styles.Header.Font.Bold          = true;
            settings.Styles.LoadingDiv.CssClass       = "center";

            settings.SettingsExport.Landscape      = true;
            settings.StylesPager.PageSizeItem.Wrap = DefaultBoolean.True;

            // filtration
            settings.Settings.ShowHeaderFilterButton = true;
            settings.Settings.ShowFilterBar          = GridViewStatusBarMode.Hidden;

            // Aggregate functions
            //settings.CustomUnboundColumnData = Grid_CustomUnboundColumnData;

            // Add columns (and bands)
            AddToGrid(Model, settings.Columns);

            // Custom filter
            settings.HeaderFilterFillItems = (sender, e) =>
            {
                var col = Model.GetColumnByOriginalName(e.Column.FieldName);
                if (col != null && !string.IsNullOrEmpty(col.ColumnFilter) &&
                    !col.ColumnFilter.StartsWith("IsNullOrEmpty") && !col.ColumnFilter.StartsWith("Not IsNullOrEmpty") &&
                    !col.ColumnFilter.EndsWith(" Null") &&
                    (col.ColumnFilter.Contains(" Or ") || col.ColumnFilter.Contains(" And ") || !col.ColumnFilter.Contains(" = ")))
                {
                    e.AddValue(col.ColumnFilter.Replace("[" + e.Column.FieldName + "] ", ""), string.Empty, col.ColumnFilter);
                }
            };

            // Events
            settings.HtmlDataCellPrepared = (sender, e) =>
            {
                DisplayAsterisk(Model, e);
            };
            settings.ClientLayout = Grid_ClientLayout;
            settings.PreRender    = Grid_PreRender;

            settings.ClientSideEvents.CustomizationWindowCloseUp = "viewGridForm.grid_CustomizationWindowCloseUp";
            settings.ClientSideEvents.ColumnResized = "viewGridForm.grid_ColumnResized";
            settings.ClientSideEvents.ColumnMoving  = "viewGridForm.grid_ColumnMoving";
            settings.ClientSideEvents.CallbackError = "viewGridForm.grid_CallbackError";
            //settings.ClientSideEvents.SelectionChanged = "viewGridForm.grid_SelectionChanged";
            settings.Theme         = GeneralSettings.Theme;
            settings.RightToLeft   = Cultures.IsRtl ? DefaultBoolean.True : DefaultBoolean.False;
            Model.GridViewSettings = settings;
            ResetDisplayTextHandler();
            return(settings);
        }