protected void btnSaveReportColumnsSchema_Click(object sender, EventArgs e) { var reportsManager = new ReportsManager(this); var reportColumnsSchema = new ReportColumnsSchema(); ReportColumnsSchema original_reportColumnsSchema = new ReportColumnsSchema(); if (reportTablesSchemaId > 0) { original_reportColumnsSchema = reportsManager.GetColumnSchema(reportTablesSchemaId, reportColumnsSchemaId); reportColumnsSchema.CopyPropertiesFrom(original_reportColumnsSchema); } reportColumnsSchema.ReportTablesSchemaId = reportTablesSchemaId; reportColumnsSchema.Name = txtReportColumnsSchemaName.Text; reportColumnsSchema.Source = txtSource.Text; reportColumnsSchema.ReportDataTypeId = Convert.ToInt32(cboReportDataType.SelectedValue); reportColumnsSchema.ForeignKey = txtForeignKey.Text; reportColumnsSchema.PrimaryKey = txtPrimaryKey.Text; reportColumnsSchema.PrimaryTable = txtPrimaryTable.Text; reportColumnsSchema.PrimaryLabelColumn = txtPrimaryLabelColumn.Text; if (reportColumnsSchemaId > 0) { reportsManager.Update(original_reportColumnsSchema, reportColumnsSchema); } else { reportsManager.Insert(reportColumnsSchema); } Response.Redirect("DynamicReportFields.aspx?ReportTablesSchemaId=" + Request["ReportTablesSchemaId"]); }
/// <summary> /// Populate the CheckBox with the Related table from column foreign key /// </summary> /// <param name="tableId"></param> /// <param name="columnId"></param> private void BindFilterListItem(int tableId, int columnId) { ReportColumnsSchema column = Page.ReportManager.GetColumnSchema(tableId, columnId); chkFilterList.DataSource = Page.ReportManager.RetrieveFilterListItems(column); chkFilterList.DataTextField = column.PrimaryLabelColumn; chkFilterList.DataValueField = column.PrimaryKey; chkFilterList.DataBind(); }
void PersistColumnsSelected() { ReportsManager manager = new ReportsManager(null); if (!String.IsNullOrEmpty(Request["OrderedColumnsHidden"])) { Page.Settings.Columns.Clear(); string[] values = Request["OrderedColumnsHidden"].Trim(',').Split(','); foreach (string value in values) { if (!String.IsNullOrEmpty(value)) { ReportColumnsSchema columnSchema = manager.GetColumnSchema(Page.Settings.Report.ReportTablesSchemaId.Value, Convert.ToInt32(value)); ReportColumn column = new ReportColumn(); column.ReportColumnsSchemaId = columnSchema.ReportColumnsSchemaId; column.ReportTablesSchemaId = columnSchema.ReportTablesSchemaId; column.ReportDataTypeId = columnSchema.ReportDataTypeId; column.Name = columnSchema.Name; Page.Settings.Columns.Add(column); } } } }