Ejemplo n.º 1
0
/// <summary>
/// Aggregation role changed
/// </summary>
/// <param name="ats"></param>

        private void AggregationRoleChanged(AggregationDefMenus ats)
        {
            FieldGridView.SetRowCellValue(FieldGridRow, "AggRoleCol", Field.Aggregation.RoleLabel);
            FieldGridView.SetRowCellValue(FieldGridRow, "AggTypeCol", Field.Aggregation.TypeLabel);
            Field.SyncDxAreaToMxRole();          // sync Dx area
            PivotGrid.RefreshData();             // refresh the PivotGrid to show new agg type results
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Summary type selected
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>

        private void AggregationTypeMenuItem_Click(object sender, EventArgs e)
        {
            PivotGridFieldMx f = PivotGridField;

            DXMenuItem mi       = sender as DXMenuItem;
            string     typeName = mi.Tag.ToString();         // tag is enum member name

            AggregationTypeDetail atd = AggregationTypeDetail.GetByTypeName(typeName, true);

            if (atd.IsGroupingType && atd.GroupingType == GroupingTypeEnum.NumericInterval)
            {
                DialogResult dr = NumericIntervalDialog.ShowDialog(f.Aggregation, UIMisc.MousePosition);
                //if (dr == DialogResult.Cancel) return;
            }

            f.Aggregation.SetFromTypeName(typeName);
            f.SyncDxAreaToMxRole();             // sync Dx area
            PivotGrid.RefreshData();

            if (UpdateViewWhenGridControlChanges)
            {
                View.UpdateViewFieldsFromGridFields();
            }

            return;
        }
Ejemplo n.º 3
0
        private void ChangeRole(AggregationRole role)
        {
            PivotGridFieldMx f    = PivotGridField;
            ResultsField     rfld = f.ResultsField as ResultsField;
            MetaColumn       mc   = rfld.MetaColumn;

            f.Aggregation.Role = role;                   // set the role for Mobius
            f.Aggregation.SetDefaultTypeIfUndefined(mc); // and default type if needed
            f.SyncDxAreaToMxRole();                      // sync Dx Area

            if (UpdateViewWhenGridControlChanges)
            {
                View.UpdateViewFieldsFromGridFields();
            }

            return;
        }
Ejemplo n.º 4
0
/// <summary>
/// Build the Grid fields for the PivotGridControl from the persisted Mobius view fields
/// </summary>

        void BuildGridFieldsFromViewFields()
        {
            PivotGridFieldMx gf, gf2;

            PivotGridCtl.Fields.Clear();
            PivotGridCtl.Groups.Clear();

            PivotGridPropertiesMx p = PivotGridPropertiesMx;

            for (int fi = 0; fi < p.PivotFields.Count; fi++)             // build grid fields from view fields
            {
                PivotGridFieldMx pf   = p.PivotFields[fi];
                ResultsField     rfld = pf.ResultsField as ResultsField;
                if (rfld == null)
                {
                    continue;
                }
                PivotGridControlMx.SetFieldCaption(pf);                 // be sure we have a caption

                Mobius.Data.QueryColumn qc = rfld.QueryColumn;
                MetaColumn mc = rfld.MetaColumn;

                gf = new PivotGridFieldMx();
                pf.CopyField(gf);
                pf.SyncDxAreaToMxRole();

                if (mc.IsKey)
                {
                    gf.ImageIndex = (int)Bitmaps16x16Enum.Key;
                }
                else
                {
                    gf.ImageIndex = (int)mc.DataTypeImageIndex;
                }

                gf.Options.AllowRunTimeSummaryChange = true;
                gf.Options.ShowUnboundExpressionMenu = true;

                PivotGridCtl.Fields.Add(gf);
            }

            return;
        }
Ejemplo n.º 5
0
        /// <summary>
        /// Value tentatively changed
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>

        private void FieldGridView_CellValueChanging(object sender, CellValueChangedEventArgs e)
        {
            int ri = e.RowHandle;

            if (ri < 0)
            {
                return;
            }
            DataRow dr = FieldGridDataTable.Rows[ri];

            GridColumn gc = e.Column;

            if (gc == null)
            {
                return;
            }
            int gci = gc.AbsoluteIndex;

            PivotGridFieldMx f    = PivotGrid.Fields[ri] as PivotGridFieldMx;
            ResultsField     rfld = f.ResultsField as ResultsField;

            Mobius.Data.QueryColumn qc = rfld.QueryColumn;
            MetaColumn mc = qc.MetaColumn;

            if (gc.FieldName == "FieldNameCol")
            {
                return;                 // wait til move out of cell
            }

            else if (gc.FieldName == "AggRoleCol")
            {
                //e=e;
                //object o = e.Value;
                //DataRow dr2 = FieldGridDataTable.Rows[e.RowHandle];
                //object vo = dr2["AggRoleCol"];
                //FieldGridDataTable

                f.SyncDxAreaToMxRole();                 // sync Dx area
                PivotGrid.RefreshData();                // refresh the PivotGrid to show new agg type results

                //dr["AggRoleCol"] = f.Aggregation.TypeLabel;
                return;                 // throw new NotImplementedException();

                //string txt = e.Value.ToString();
                //if (Lex.IsNullOrEmpty(txt) || Lex.Eq(txt, "None"))
                //{
                //	f.Visible = false;

                //	dr["SummaryTypeCol"] = "";
                //	//dr["HeaderBinningCol"] = "";
                //}
                //else
                //{
                //	f.Area = (PivotArea)Enum.Parse(typeof(PivotArea), txt);
                //	f.Visible = true;

                //	dr["SummaryTypeCol"] = SummaryTypeLabel(f);
                //	//dr["HeaderBinningCol"] = GroupingTypeLabel(f);
                //}

                //PivotGrid.SetFilterHeaderVisibility();
            }

            else if (gc.FieldName == "AggTypeCol")
            {
                return;
            }

            //else if (gc.FieldName == "HeaderBinningCol")
            //{
            //	return;
            //}

            else if (gc.FieldName == "SourceColumnCol" || gc.FieldName == "SourceTableCol")
            {
                return;
            }

            else
            {
                return;              // something else
            }
        }