internal static ReportItemCollection CreateItemsCollection(DataSet resultDataSet, DataGridViewColumn[] displayCols) { ReportItemCollection sourceItems = WizardHelper.ReportItemCollection(resultDataSet); ReportItemCollection destItems = WizardHelper.ExtractSelectedItems(sourceItems, displayCols); return(destItems); }
private void WriteResult() { if (this.resultDataSet != null) { // check reordering of columns DataGridViewColumn[] displayCols; DataGridViewColumnCollection dc = this.grdQuery.Columns; displayCols = new DataGridViewColumn[dc.Count]; for (int i = 0; i < dc.Count; i++) { if (dc[i].Visible) { displayCols[dc[i].DisplayIndex] = dc[i]; } } ReportItemCollection sourceItems = WizardHelper.ReportItemCollection(this.resultDataSet); AvailableFieldsCollection abstractColumns = WizardHelper.AvailableFieldsCollection(this.resultDataSet); ReportItemCollection destItems = new ReportItemCollection(); // only checked columns are used in the report foreach (DataGridViewColumn cc in displayCols) { DataGridViewColumnHeaderCheckBoxCell hc = (DataGridViewColumnHeaderCheckBoxCell)cc.HeaderCell; if (hc.Checked) { BaseReportItem br = (BaseReportItem)sourceItems.Find(cc.HeaderText); destItems.Add(br); } } reportStructure.ReportItemCollection.Clear(); reportStructure.ReportItemCollection.AddRange(destItems); /* * if ((this.sqlParamsCollection != null) && (this.sqlParamsCollection.Count > 0)) { * reportStructure.SqlQueryParameters.AddRange(sqlParamsCollection); * } */ if (abstractColumns != null) { reportStructure.AvailableFieldsCollection.Clear(); reportStructure.AvailableFieldsCollection.AddRange(abstractColumns); } /* * if ((this.sqlParamsCollection != null) && (this.sqlParamsCollection.Count > 0)) { * reportStructure.SqlQueryParameters.Clear(); * reportStructure.SqlQueryParameters.AddRange(sqlParamsCollection); * } */ } base.EnableNext = true; base.EnableFinish = true; }