Beispiel #1
0
        public static CustomFilterItem[] GetItems(DevExpress.Web.ASPxPivotGrid.PivotGridField field)
        {
            var selectedValues = field.FilterValues.ValuesIncluded;

            return(field.GetUniqueValues()
                   .Select(v => new MPG_CustomFilterPopup.Models.CustomFilterItem()
            {
                Value = v, DisplayText = field.GetDisplayText(v), Selected = ContainItem(selectedValues, v)
            })
                   .ToArray());
        }
Beispiel #2
0
    void ITemplate.InstantiateIn(Control container)
    {
        PivotGridCellTemplateContainer templateContainer = (PivotGridCellTemplateContainer)container;

        DevExpress.Web.ASPxPivotGrid.PivotGridField field = templateContainer.DataField;

        if (field != null && field.ID == "fieldTotalCostPercents")
        {
            ASPxProgressBar bar = new ASPxProgressBar();
            bar.CssClass = "pvProgressBar";
            bar.IndicatorStyle.CssClass = "indicator";
            bar.Position            = 100 * Convert.ToDecimal(templateContainer.Value);
            bar.DisplayFormatString = "0.#";
            // The settings are defined in the Init event to override ASPxProgressBar skin's settings specified in the MetropolisBlue theme
            bar.Init += (s, e) => { (s as ASPxProgressBar).ShowPosition = true; };
            templateContainer.Controls.Add(bar);
        }
        else
        {
            templateContainer.Controls.Add(new LiteralControl(templateContainer.Text));
        }
    }
    void Forms_Analytics_AnalyticExtracts_View_ѕри»нициализации—траницы(object ќтправитель, Ѕарс.»нтерфейс.јргументы—обыти¤ јргументы)
    {
        јналитическओаблица.Styles.FieldValueStyle.HorizontalAlign = HorizontalAlign.Left;

        if (Session["AnalyticExtract"] != null && Session["AnalyticExtract"] is ќписаниеѕроизвольной¬ыборки)
        {
            DataTable таблицаƒанных = null;

            if (!IsPostBack)
            {
                DevExpress.XtraPivotGrid.Localization.PivotGridLocalizer.Active = new Ѕарс.окализаци¤.XtraPivotGrid–усский();
                јналитическओаблица.OptionsLoadingPanel.Text             = "«агрузка...";
                јналитическओаблица.OptionsPager.CurrentPageNumberFormat = "—траница {0}";

                ќписаниеѕроизвольной¬ыборки описаниеѕроизвольной¬ыборки = Session["AnalyticExtract"] as ќписаниеѕроизвольной¬ыборки;

                ѕровайдерѕроизвольной¬ыборки провайдерѕроизвольной¬ыборки = new ѕровайдерѕроизвольной¬ыборки(описаниеѕроизвольной¬ыборки);
                //провайдерѕроизвольной¬ыборки.«агрузитьћетаданные();

                bool собрать«аново = true;

                if (Session["BuildAnew"] != null && Session["BuildAnew"] is bool)
                {
                    try
                    {
                        собрать«аново = (bool)Session["BuildAnew"];
                    }
                    catch
                    {
                    }
                }

                таблицаƒанных = провайдерѕроизвольной¬ыборки.ѕолучить“аблицуƒанных(собрать«аново);

                Session["PivotGridDataSource"] = таблицаƒанных;

                // пол¤
                DevExpress.Web.ASPxPivotGrid.PivotGridField поле“аблицы = new DevExpress.Web.ASPxPivotGrid.PivotGridField();
                јналитическओаблица.Fields.Add(поле“аблицы);
                поле“аблицы.Caption     = "”чреждение";
                поле“аблицы.FieldName   = "Uchrej".ToUpper();
                поле“аблицы.Area        = DevExpress.XtraPivotGrid.PivotArea.RowArea;
                поле“аблицы.SummaryType = DevExpress.Data.PivotGrid.PivotSummaryType.Sum;
                поле“аблицы.Width       = 100;

                foreach (ѕолеѕроизвольной¬ыборки поле in описаниеѕроизвольной¬ыборки.ѕол¤)
                {
                    поле“аблицы = new DevExpress.Web.ASPxPivotGrid.PivotGridField();

                    јналитическओаблица.Fields.Add(поле“аблицы);

                    поле“аблицы.CellFormat.FormatType   = DevExpress.Utils.FormatType.Numeric;
                    поле“аблицы.CellFormat.FormatString = "N2";

                    поле“аблицы.Caption   = поле.«аголовок;
                    поле“аблицы.FieldName = поле.»м¤ѕеременной.ToUpper();

                    if (поле.“ипѕол¤OLAP != Ѕарс.“ипѕол¤OLAP уба.—крытоеѕоле)
                    {
                        поле“аблицы.Area = ѕреобразовать“ип(поле.“ипѕол¤OLAP);
                    }
                    else
                    {
                        поле“аблицы.Visible = false;
                    }

                    if (поле.–ежим‘ормирован褻тогов == –ежим‘ормирован褻тогов—толбцајналитической“аблицы.Ѕез»тогов)
                    {
                        поле“аблицы.Options.ShowTotals = false;
                    }
                    else
                    {
                        поле“аблицы.SummaryType = (DevExpress.Data.PivotGrid.PivotSummaryType)((int)поле.–ежим‘ормирован褻тогов);
                    }

                    поле“аблицы.Name = "Field" + (јналитическओаблица.Fields.Count + 1).ToString();
                }
Beispiel #4
0
 public static bool IsFieldGroupIntervalChanged(PivotGridField field, PivotGroupInterval interval)
 {
     return((field.Area == PivotArea.RowArea || field.Area == PivotArea.ColumnArea) && field.Visible &&
            field.GroupInterval != interval);
 }
Beispiel #5
0
        private static void PivotGridOnFieldAreaChanged(object sender, PivotFieldEventArgs pivotFieldEventArgs)
        {
            var pivotGrid              = (MVCxPivotGrid)sender;
            AvrPivotGridModel model    = GetModelFromSession(pivotGrid.Request);
            PivotGridField    field    = pivotFieldEventArgs.Field;
            WebPivotGridField webField = GetWebPivotGridFieldByName(model.PivotSettings.Fields, field.ID);

            if (field.Area == webField.Area && field.AreaIndex == webField.AreaIndex && field.Visible == webField.Visible)
            {
                return;
            }

            bool copyAddMissedValues = field.Visible &&
                                       (field.Area == PivotArea.ColumnArea || field.Area == PivotArea.RowArea) &&
                                       (!webField.Visible || !(webField.Area == PivotArea.ColumnArea ||
                                                               webField.Area == PivotArea.RowArea));
            bool clearMissedValues = !field.Visible ||
                                     !(field.Area == PivotArea.ColumnArea || field.Area == PivotArea.RowArea);

            webField.Area      = field.Area;
            webField.AreaIndex = field.AreaIndex;
            webField.Visible   = field.Visible;
            if (copyAddMissedValues)
            {
                CopyMissedValuesToField(webField, model.PivotSettings.Fields);
            }
            else if (clearMissedValues)
            {
                ClearMissedValues(webField);
            }
            var adminUnitsList = AvrPivotGridHelper.GetAdministrativeUnitView(model.PivotSettings.QueryId,
                                                                              model.PivotSettings.Fields.ToList <IAvrPivotGridField>());

            foreach (PivotGridField f in pivotGrid.Fields)
            {
                WebPivotGridField webF = GetWebPivotGridFieldByName(model.PivotSettings.Fields, f.ID);
                if (f.Visible && f.Area == field.Area && f.ID != field.ID)
                {
                    webF.AreaIndex = f.AreaIndex;
                }
                if (webF.UnitLayoutSearchFieldId != -1 && webF.UnitLayoutSearchFieldId != 0)
                {
                    if (adminUnitsList == null || adminUnitsList.Count == 0 || webF.Area != PivotArea.RowArea)
                    {
                        webF.UnitLayoutSearchFieldId = -1L;
                    }
                    else if (!webF.UnitLayoutSearchFieldId.Equals(adminUnitsList[0]["Id"]))
                    {
                        webF.UnitLayoutSearchFieldId = DBNull.Value.Equals(adminUnitsList[0]["Id"])
                                                           ? -1L
                                                           : (long)adminUnitsList[0]["Id"];
                    }
                }
            }
            if (model.PivotSettings.ShowMissedValues)
            {
                AddMissedValues(model, true);
                pivotGrid.JSProperties["cpNeedCallback"] = true;
                //pivotGrid.ReloadData();
            }
            else
            {
                LayoutValidateResult validateResult = FillEmptyValuesInDataArea(model);
                pivotGrid.JSProperties["cpNeedCallback"] = validateResult.IsCancelOrUserDialogCancel();
            }
            // because AvrPivotGridHelperWeb which used inside m_CustomSummaryHandler should be re-initialized
            m_CustomSummaryHandler = null;
        }