コード例 #1
0
        public void ShowPivotForm()
        {
            pivotGrid               = new PivotGridControl();
            pivotGrid.Dock          = System.Windows.Forms.DockStyle.Fill;
            pivotForm               = new XtraForm();
            pivotForm.Icon          = Marbid.Module.Win.Properties.Resources.mareinico;
            pivotForm.StartPosition = FormStartPosition.CenterScreen;
            pivotForm.Text          = "Pivot Grid: " + ReportName;
            pivotForm.Controls.Add(pivotGrid);
            DataRetrieval retrieval = new DataRetrieval();

            pivotForm.Height = 768;
            pivotForm.Width  = 1024;
            List <ParameterDictionary> paramDictionary;

            if (ParameterDefinition.Count > 0)
            {
                ParameterForm parameterForm = new ParameterForm();
                parameterForm.ParameterDefinition = ParameterDefinition;
                if (parameterForm.ShowParameterDialog() == DialogResult.Cancel)
                {
                    return;
                }
                paramDictionary      = parameterForm.ParameterDictionary;
                retrieval.Parameters = paramDictionary;
            }
            retrieval.ConnectionString = ConnectionString;
            retrieval.QueryString      = QueryString;
            DataSet dataSet = new DataSet();

            SplashScreenManager.ShowForm(typeof(WaitForm1));
            try
            {
                dataSet = retrieval.GetDataSet("ReportData", dataSet);
            }
            finally
            {
                SplashScreenManager.CloseForm(false);
            }
            pivotGrid.OptionsMenu.EnableFormatRulesMenu = true;
            pivotGrid.DataSource        = dataSet.Tables["ReportData"];
            pivotGrid.PopupMenuShowing += PivotGrid_PopupMenuShowing;
            pivotGrid.CellDoubleClick  += PivotGrid_CellDoubleClick;

            if (!String.IsNullOrWhiteSpace(LayoutData))
            {
                MemoryStream stream = new MemoryStream();
                StreamWriter writer = new StreamWriter(stream);
                writer.Write(LayoutData);
                writer.Flush();
                stream.Position = 0;
                pivotGrid.RestoreLayoutFromStream(stream, opt);
            }
            else
            {
                pivotGrid.RetrieveFields();
                foreach (PivotGridField field in pivotGrid.Fields)
                {
                    if (field.DataType == typeof(System.Double) || field.DataType == typeof(System.Decimal))
                    {
                        field.CellFormat.FormatType   = FormatType.Numeric;
                        field.CellFormat.FormatString = "n2";
                        field.AllowedAreas            = PivotGridAllowedAreas.DataArea;
                    }
                    else
                    {
                        field.SummaryType = DevExpress.Data.PivotGrid.PivotSummaryType.Count;
                    }
                }
            }
            pivotForm.Show();
        }
コード例 #2
0
        public void ShowGridForm()
        {
            gridView           = new GridView();
            gridControl        = new GridControl();
            form               = new XtraForm();
            form.Icon          = Marbid.Module.Win.Properties.Resources.mareinico;
            form.StartPosition = FormStartPosition.CenterScreen;
            form.Text          = ReportName;
            gridControl.ViewCollection.Add(gridView);
            gridControl.Dock = DockStyle.Fill;
            DataSet dataSet = new DataSet();

            DataRetrieval retrieval = new DataRetrieval();
            List <ParameterDictionary> paramDictionary;

            if (parameterDefinition.Count > 0)
            {
                ParameterForm parameterForm = new ParameterForm();
                parameterForm.ParameterDefinition = parameterDefinition;
                if (parameterForm.ShowParameterDialog() == DialogResult.Cancel)
                {
                    return;
                }

                paramDictionary      = parameterForm.ParameterDictionary;
                retrieval.Parameters = paramDictionary;
            }

            retrieval.ConnectionString = connectionString;
            retrieval.QueryString      = queryString;
            SplashScreenManager.ShowForm(typeof(WaitForm1));
            try
            {
                dataSet = retrieval.GetDataSet("ReportData", dataSet);
            }
            finally
            {
                //Close Wait Form
                SplashScreenManager.CloseForm(false);
            }
            gridControl.DataSource = dataSet.Tables["ReportData"];
            gridView.PopulateColumns();
            gridControl.ForceInitialize();
            form.Controls.Add(gridControl);
            form.Shown += GridForm_Shown;
            GridView view = (GridView)gridControl.MainView;

            foreach (GridColumn col in view.Columns)
            {
                col.OptionsColumn.ReadOnly = true;
                if (col.ColumnType == typeof(System.Decimal) || col.ColumnType == typeof(System.Double))
                {
                    col.DisplayFormat.FormatType   = FormatType.Numeric;
                    col.DisplayFormat.FormatString = "n2";
                    col.SummaryItem.SummaryType    = DevExpress.Data.SummaryItemType.Sum;
                }
            }
            form.Height            = 768;
            form.Width             = 1024;
            view.PopupMenuShowing += GridView_PopupMenuShowing;
            SplashScreenManager.CloseForm(false);
            form.Show();
        }
コード例 #3
0
        public DialogResult ShowParameterDialog()
        {
            DataRetrieval retrieval = new DataRetrieval();
            XtraForm      form      = new XtraForm();

            form.Icon = Marbid.Module.Win.Properties.Resources.mareinico;
            form.Text = "Parameters";
            LayoutControl layout = new LayoutControl()
            {
                Name = "layout",
            };

            layout.Root.BeginUpdate();
            foreach (ParameterDefinition definition in parameterDefinition)
            {
                LayoutControlItem itemLayout;

                switch (definition.ParameterPropertyType)
                {
                case ParameterPropertyType.DataSource:
                    string  paramQuery      = definition.ParameterQueryString;
                    string  paramConnection = definition.ParameterConnection;
                    DataSet paramDataSet    = new DataSet();
                    paramDataSet = retrieval.GetDataSet("ParamData", paramQuery, paramConnection, paramDataSet);
                    LookUpEdit lookUpEdit = new LookUpEdit();
                    lookUpEdit.Properties.DataSource    = paramDataSet.Tables[0];
                    lookUpEdit.Properties.ValueMember   = paramDataSet.Tables[0].Columns[0].ColumnName;
                    lookUpEdit.Properties.DisplayMember = paramDataSet.Tables[0].Columns[1].ColumnName;
                    lookUpEdit.EditValue = definition.ParameterDefaultValue;
                    itemLayout           = layout.AddItem(definition.ParameterCaption, lookUpEdit);
                    itemLayout.OptionsTableLayoutItem.RowIndex = definition.ParameterIndex;
                    itemLayout.Name      = definition.ParameterName;
                    lookUpEdit.EditValue = definition.ParameterDefaultValue;
                    break;

                case BusinessObjects.ParameterPropertyType.DateTime:
                    DateEdit dateEdit = new DateEdit()
                    {
                        DateTime  = DateTime.Now,
                        Name      = definition.ParameterName,
                        EditValue = definition.ParameterDefaultValue
                    };
                    itemLayout      = layout.AddItem(definition.ParameterCaption, dateEdit);
                    itemLayout.Name = definition.ParameterName;
                    itemLayout.OptionsTableLayoutItem.RowIndex = definition.ParameterIndex;
                    break;

                case BusinessObjects.ParameterPropertyType.String:
                    TextEdit textEdit = new TextEdit()
                    {
                        Name = definition.ParameterName
                    };
                    itemLayout      = layout.AddItem(definition.ParameterCaption, textEdit);
                    itemLayout.Name = definition.ParameterName;
                    itemLayout.OptionsTableLayoutItem.RowIndex = definition.ParameterIndex;
                    break;

                case BusinessObjects.ParameterPropertyType.Integer:
                    SpinEdit spinEdit = new SpinEdit()
                    {
                        Name = definition.ParameterName
                    };
                    itemLayout      = layout.AddItem(definition.ParameterCaption, spinEdit);
                    itemLayout.Name = definition.ParameterName;
                    itemLayout.OptionsTableLayoutItem.RowIndex = definition.ParameterIndex;
                    break;

                case BusinessObjects.ParameterPropertyType.Numeric:
                    CalcEdit calcEdit = new CalcEdit()
                    {
                        Name = definition.ParameterName
                    };
                    itemLayout      = layout.AddItem(definition.ParameterCaption, calcEdit);
                    itemLayout.Name = definition.ParameterName;
                    itemLayout.OptionsTableLayoutItem.RowIndex = definition.ParameterIndex;
                    break;
                }
            }
            SimpleButton buttonOK = new SimpleButton()
            {
                Name         = "ButtonOK",
                DialogResult = DialogResult.OK,
                Text         = "OK"
            };

            SimpleButton buttonCancel = new SimpleButton()
            {
                Name         = "ButtonCancel",
                DialogResult = DialogResult.Cancel,
                Text         = "Cancel"
            };
            LayoutControlItem btn = layout.AddItem("OK", buttonOK);

            btn.TextVisible   = false;
            form.AcceptButton = buttonOK;
            btn               = layout.AddItem("Cancel", buttonCancel);
            btn.TextVisible   = false;
            form.CancelButton = buttonCancel;
            layout.Root.EndUpdate();
            layout.Dock = DockStyle.Fill;
            form.Controls.Add(layout);
            form.StartPosition = FormStartPosition.CenterScreen;

            DialogResult result = form.ShowDialog();

            if (result == DialogResult.OK)
            {
                foreach (BaseLayoutItem item in layout.Items)
                {
                    if (item is LayoutControlItem)
                    {
                        LayoutControlItem controlItem = (LayoutControlItem)item;
                        if (((LayoutControlItem)item).Control.GetType() == typeof(SpinEdit))
                        {
                            var paramData = new ParameterDictionary()
                            {
                                ParameterName = item.Name, ParameterValue = ((SpinEdit)controlItem.Control).Value
                            };
                            parameterDictionary.Add(paramData);
                        }

                        if (((LayoutControlItem)item).Control.GetType() == typeof(CalcEdit))
                        {
                            var paramData = new ParameterDictionary()
                            {
                                ParameterName = item.Name, ParameterValue = ((CalcEdit)controlItem.Control).Value
                            };
                            parameterDictionary.Add(paramData);
                        }

                        if (((LayoutControlItem)item).Control.GetType() == typeof(DateEdit))
                        {
                            var paramData = new ParameterDictionary()
                            {
                                ParameterName = item.Name, ParameterValue = ((DateEdit)controlItem.Control).DateTime
                            };
                            parameterDictionary.Add(paramData);
                        }

                        if (((LayoutControlItem)item).Control.GetType() == typeof(TextEdit))
                        {
                            var paramData = new ParameterDictionary()
                            {
                                ParameterName = item.Name, ParameterValue = ((TextEdit)controlItem.Control).Text
                            };
                            parameterDictionary.Add(paramData);
                        }

                        if (((LayoutControlItem)item).Control.GetType() == typeof(LookUpEdit))
                        {
                            var paramData = new ParameterDictionary()
                            {
                                ParameterName = item.Name, ParameterValue = ((LookUpEdit)controlItem.Control).EditValue
                            };
                            parameterDictionary.Add(paramData);
                        }
                    }
                }
            }
            return(result);
        }