コード例 #1
0
        private void DoAddParameter()
        {
            if (!cAddParameter.Enabled)
            {
                return;
            }

            C1FlexReport report = _flexDesigner.Report;

            if (report == null)
            {
                return;
            }

            _dataTree.EndInPlaceEdit();
            BeginUpdates();
            _flexDesigner.UndoSaveState();
            ReportParameter parameter = new ReportParameter();

            parameter.Name = DesignerUtil.MakeUniqueName(report.Parameters, "Parameter");
            report.Parameters.Add(parameter);
            EndUpdates(true);
            foreach (var ds in report.DataSources)
            {
                ds.ResetDataSourceInfo();
            }
            UpdateUI(true, true);
            if (_dataTree.GoToParameter(parameter))
            {
                _dataTree.StartInplaceEdit();
            }
        }
コード例 #2
0
        private DataSource DataSources_AddDataSource()
        {
            C1FlexReport report = _flexDesigner.Report;

            if (report == null)
            {
                return(null);
            }

            Cursor = Cursors.WaitCursor;
            try
            {
                DataSource ds = new DataSource();
                ds.Name = DesignerUtil.MakeUniqueName(report.DataSources);
                report.DataSources.Add(ds);
                using (DataSourceForm dlg = new DataSourceForm())
                {
                    if (dlg.EditDataSource(report, _dataSchema, ds, _services, true))
                    {
                        return(ds);
                    }
                }
                return(null);
            }
            finally
            {
                Cursor = Cursors.Default;
            }
        }
コード例 #3
0
        private void _btnAdd_Click(object sender, EventArgs e)
        {
            if (DataSource == null)
            {
                return;
            }

            var cf = new CalculatedField();

            cf.Name = DesignerUtil.MakeUniqueName(this.DataSource.CalculatedFields, "CalculatedField");
            this.DataSource.CalculatedFields.Add(cf);
            var cfItem = _lvCalculatedFields.Items.Add(new CalcFieldItem(cf));

            _lvCalculatedFields.Focus();
            cfItem.Selected = true;
        }
コード例 #4
0
        private void DoAddCalculatedField()
        {
            if (!cAddCalculatedField.Enabled)
            {
                return;
            }

            C1FlexReport report = _flexDesigner.Report;

            if (report == null)
            {
                return;
            }

            var ds = _dataTree.GetCurrentDataSource();

            if (ds == null)
            {
                return;
            }

            var                     contextName = EditorScriptContextBase.MakeContextName(ds.Name, ScriptEditorContextKind.DataHandler);
            CalculatedField         cf          = null;
            Func <DataSource, bool> addField    = (ds_) =>
            {
                cf      = new CalculatedField();
                cf.Name = DesignerUtil.MakeUniqueName(ds_.CalculatedFields, "CalculatedField");
                ds_.CalculatedFields.Add(cf);
                object result;
                if (EditScriptInternal(ds_.ParentReport, contextName, null, cf, "Expression", null, true, out result))
                {
                    return(true);
                }
                cf = null;
                return(false);
            };

            DoDataSourcesAction(addField, ds);

            if (cf != null)
            {
                _dataTree.GoToCalculatedField(cf);
            }
        }