/// <summary> /// Create grid and populate /// </summary> private void CreateGrid() { string CheckedMember = FCheckedColumnName; string IdMember = MExtractMasterTable.GetExtractIdDBName(); string NameMember = MExtractMasterTable.GetExtractNameDBName(); string DescriptionMember = MExtractMasterTable.GetExtractDescDBName(); string DeletableMember = MExtractMasterTable.GetDeletableDBName(); string KeyCountMember = MExtractMasterTable.GetKeyCountDBName(); string CreatedByMember = MExtractMasterTable.GetCreatedByDBName(); string DateCreatedMember = MExtractMasterTable.GetDateCreatedDBName(); string ModifiedByMember = MExtractMasterTable.GetModifiedByDBName(); string DateModifiedMember = MExtractMasterTable.GetDateModifiedDBName(); FExtractMasterTable = TRemote.MPartner.Partner.WebConnectors.GetAllExtractHeaders(); if (FExtractMasterTable != null) { DataView view = new DataView(FExtractMasterTable); FDataTable = view.ToTable(true, new string[] { IdMember, NameMember, DescriptionMember, DeletableMember, KeyCountMember, CreatedByMember, DateCreatedMember, ModifiedByMember, DateModifiedMember }); FDataTable.Columns.Add(new DataColumn(CheckedMember, typeof(bool))); clbDetails.Columns.Clear(); if (FAllowMultipleSelect) { clbDetails.AddCheckBoxColumn("Select", FDataTable.Columns[FCheckedColumnName], 17, false); } else { clbDetails.AutoFindColumn = 0; } clbDetails.AddTextColumn("Extract Name", FDataTable.Columns[NameMember] /*, 200*/); clbDetails.AddCheckBoxColumn("Deletable", FDataTable.Columns[DeletableMember] /*, 120*/); clbDetails.AddTextColumn("Key Count", FDataTable.Columns[KeyCountMember] /*, 80*/); clbDetails.AddTextColumn("Description", FDataTable.Columns[DescriptionMember] /*, 300*/); clbDetails.DataBindGrid(FDataTable, NameMember, CheckedMember, NameMember, false, true, false); clbDetails.SetCheckedStringList(""); } this.clbDetails.ValueChanged += new System.EventHandler(this.UpdateRecordCount); PrepareButtons(); UpdateRecordCount(); }
/// <summary> /// close the screen and return the selected extract as accepted record /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void AcceptExtract(System.Object sender, EventArgs e) { MExtractMasterRow ExtractMasterRow; FResultTable = new MExtractMasterTable(); //MExtractMasterRow SelectedRow = null; DataRow SelectedRow = null; if (AllowMultipleSelect) { // multiple rows may have been selected: find all the ones where first column is ticked foreach (DataRow Row in FDataTable.Rows) { if (Convert.ToBoolean(Row[FCheckedColumnName]) == true) { ExtractMasterRow = FResultTable.NewRowTyped(); ExtractMasterRow.ExtractId = (int)Row[MExtractMasterTable.GetExtractIdDBName()]; ExtractMasterRow.ExtractName = Row[MExtractMasterTable.GetExtractNameDBName()].ToString(); ExtractMasterRow.ExtractDesc = Row[MExtractMasterTable.GetExtractDescDBName()].ToString(); ExtractMasterRow.KeyCount = (int)Row[MExtractMasterTable.GetKeyCountDBName()]; ExtractMasterRow.CreatedBy = Row[MExtractMasterTable.GetCreatedByDBName()].ToString(); ExtractMasterRow.DateCreated = (DateTime)Row[MExtractMasterTable.GetDateCreatedDBName()]; FResultTable.Rows.Add(ExtractMasterRow); } } } else { // just one row can be selected DataRowView[] SelectedGridRow = clbDetails.SelectedDataRowsAsDataRowView; if (SelectedGridRow.Length >= 1) { SelectedRow = SelectedGridRow[0].Row; ExtractMasterRow = FResultTable.NewRowTyped(); ExtractMasterRow.ExtractId = (int)SelectedRow[MExtractMasterTable.GetExtractIdDBName()]; ExtractMasterRow.ExtractName = SelectedRow[MExtractMasterTable.GetExtractNameDBName()].ToString(); ExtractMasterRow.ExtractDesc = SelectedRow[MExtractMasterTable.GetExtractDescDBName()].ToString(); ExtractMasterRow.KeyCount = (int)SelectedRow[MExtractMasterTable.GetKeyCountDBName()]; ExtractMasterRow.CreatedBy = SelectedRow[MExtractMasterTable.GetCreatedByDBName()].ToString(); ExtractMasterRow.DateCreated = (DateTime)SelectedRow[MExtractMasterTable.GetDateCreatedDBName()]; FResultTable.Rows.Add(ExtractMasterRow); } } Close(); }
/// <summary> /// reload extract list when search button is clicked /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void RefreshExtractList(System.Object sender, EventArgs e) { bool AllUsers = true; String CreatedByUser = ""; String ModifiedByUser = ""; DateTime?DateCreatedFrom = null; DateTime?DateCreatedTo = null; DateTime?DateModifiedFrom = null; DateTime?DateModifiedTo = null; string CheckedMember = FCheckedColumnName; string IdMember = MExtractMasterTable.GetExtractIdDBName(); string NameMember = MExtractMasterTable.GetExtractNameDBName(); string DescriptionMember = MExtractMasterTable.GetExtractDescDBName(); string DeletableMember = MExtractMasterTable.GetDeletableDBName(); string KeyCountMember = MExtractMasterTable.GetKeyCountDBName(); string CreatedByMember = MExtractMasterTable.GetCreatedByDBName(); string DateCreatedMember = MExtractMasterTable.GetDateCreatedDBName(); if (cmbUserCreated.GetSelectedString().Length > 0) { AllUsers = false; CreatedByUser = cmbUserCreated.GetSelectedString(); } if (cmbUserModified.GetSelectedString().Length > 0) { AllUsers = false; ModifiedByUser = cmbUserModified.GetSelectedString(); } if (dtpCreatedFrom.Text.Length > 0) { DateCreatedFrom = dtpCreatedFrom.Date; } if (dtpCreatedTo.Text.Length > 0) { DateCreatedTo = dtpCreatedTo.Date; } if (dtpModifiedFrom.Text.Length > 0) { DateModifiedFrom = dtpModifiedFrom.Date; } if (dtpModifiedTo.Text.Length > 0) { DateModifiedTo = dtpModifiedTo.Date; } FExtractMasterTable = TRemote.MPartner.Partner.WebConnectors.GetAllExtractHeaders(txtExtractName.Text, txtExtractDesc.Text, AllUsers, CreatedByUser, ModifiedByUser, DateCreatedFrom, DateCreatedTo, DateModifiedFrom, DateModifiedTo); if (FExtractMasterTable != null) { DataView view = new DataView(FExtractMasterTable); FDataTable = view.ToTable(true, new string[] { IdMember, NameMember, DescriptionMember, DeletableMember, KeyCountMember, CreatedByMember, DateCreatedMember }); FDataTable.Columns.Add(new DataColumn(CheckedMember, typeof(bool))); clbDetails.Columns.Clear(); if (FAllowMultipleSelect) { clbDetails.AddCheckBoxColumn("Select", FDataTable.Columns[FCheckedColumnName], 17, false); } clbDetails.AddTextColumn("Extract Name", FDataTable.Columns[NameMember], 200); clbDetails.AddCheckBoxColumn("Deletable", FDataTable.Columns[DeletableMember], 120); clbDetails.AddTextColumn("Key Count", FDataTable.Columns[KeyCountMember], 80); clbDetails.AddTextColumn("Description", FDataTable.Columns[DescriptionMember], 300); clbDetails.DataBindGrid(FDataTable, NameMember, CheckedMember, NameMember, false, true, false); clbDetails.SetCheckedStringList(""); } PrepareButtons(); clbDetails.Select(); }
private void RefreshFilter(System.Object sender, EventArgs e) { if (FDataTable == null) { return; } DataView dv = FDataTable.DefaultView; string FilterString = string.Empty; if (!string.IsNullOrEmpty(txtExtractName.Text)) { FilterString = MExtractMasterTable.GetExtractNameDBName() + " LIKE '%" + txtExtractName.Text + "%' AND "; } if (!string.IsNullOrEmpty(txtExtractDesc.Text)) { FilterString += MExtractMasterTable.GetExtractDescDBName() + " LIKE '%" + txtExtractDesc.Text + "%' AND "; } if (!string.IsNullOrEmpty(cmbUserCreated.GetSelectedString())) { FilterString += MExtractMasterTable.GetCreatedByDBName() + " = '" + cmbUserCreated.GetSelectedString() + "' AND "; } if ((dtpCreatedFrom.Date != null) && dtpCreatedFrom.ValidDate()) { FilterString += MExtractMasterTable.GetDateCreatedDBName() + " >= '" + ((DateTime)dtpCreatedFrom.Date).ToShortDateString() + "' AND "; } if ((dtpCreatedTo.Date != null) && dtpCreatedTo.ValidDate()) { FilterString += MExtractMasterTable.GetDateCreatedDBName() + " <= '" + ((DateTime)dtpCreatedTo.Date).ToShortDateString() + "' AND "; } if (!string.IsNullOrEmpty(cmbUserModified.GetSelectedString())) { FilterString += MExtractMasterTable.GetModifiedByDBName() + " = '" + cmbUserModified.GetSelectedString() + "' AND "; } if ((dtpModifiedFrom.Date != null) && dtpModifiedFrom.ValidDate()) { FilterString += MExtractMasterTable.GetDateModifiedDBName() + " >= '" + ((DateTime)dtpModifiedFrom.Date).ToShortDateString() + "' AND "; } if ((dtpModifiedTo.Date != null) && dtpModifiedTo.ValidDate()) { FilterString += MExtractMasterTable.GetDateModifiedDBName() + " <= '" + ((DateTime)dtpModifiedTo.Date).ToShortDateString() + "'"; } if (FilterString.EndsWith(" AND ")) { FilterString = FilterString.Remove(FilterString.Length - 5); } dv.RowFilter = FilterString; // temp remove event so UpdateRecordCount doesn't get called for every row this.clbDetails.ValueChanged -= new System.EventHandler(this.UpdateRecordCount); clbDetails.SetCheckedStringList(""); clbDetails.DataSource = new DevAge.ComponentModel.BoundDataView(dv); clbDetails.AutoResizeGrid(); this.clbDetails.ValueChanged += new System.EventHandler(this.UpdateRecordCount); UpdateRecordCount(); }