public FormTableViewer getCoursesSumUpViewer(string table) { SqlCeResultSet r = db.Select(string.Format ("SELECT [{0}].st_id, students.name, [{0}].mark FROM [{0}], students WHERE [{0}].st_id = students.st_id", table)); FormTableViewer viewer = new FormTableViewer(); viewer._MMHostForm = this; viewer.MdiParent = this; viewer.Text = string.Format("{0} {1} {2}", viewer.Text, table, db.GetTip("co_id", int.Parse(table.Substring(("co_sta_").Length)))); viewer.grid.DataSource = r; FormTableViewerTag tag = new FormTableViewerTag(db, Database.Tables.CoursesSumUp); tag.expand = table; viewer.Tag = tag; viewer.grid.DataError += new DataGridViewDataErrorEventHandler(grid_DataError); viewer.grid.CellValueChanged += new DataGridViewCellEventHandler(grid_CellValueChanged); string[] caption = db.TableCaptions(Database.Tables.CoursesSumUp); if (caption.Length == viewer.grid.Columns.Count) { for (int i = 0; i < viewer.grid.Columns.Count; i++) { viewer.grid.Columns[i].HeaderText = caption[i]; } } return(viewer); }
void testCoursesComplettion_Click(object sender, EventArgs e) { if (grid.SelectedCells.Count == 0) { MessageBox.Show("Vui lòng chọn các BGID cần kiểm tra xem đã hoàn thành việc nhập điểm hay chưa"); return; } int[] co_ids = new int[grid.SelectedCells.Count]; for (int i = 0; i < grid.SelectedCells.Count; i++) { try { co_ids[i] = (int)grid.Rows[grid.SelectedCells[i].RowIndex].Cells[0].Value; } catch (Exception) { continue; } } FormTableViewer ftv_cc = new FormTableViewer(); ftv_cc.grid.AutoSize = false; ftv_cc.grid.DataSource = tag.Db.CoursesCompletionDataTable(co_ids); ftv_cc.grid.DataMember = ""; ftv_cc.grid.GridColor = Color.SkyBlue; ftv_cc.MdiParent = this.MdiParent; ftv_cc.Text = "CC"; ftv_cc.grid.ReadOnly = true; ftv_cc.Show(); }
void grid_DataError(object sender, DataGridViewDataErrorEventArgs e) { SqlCeException ex = e.Exception as SqlCeException; string message = ""; DataGridView grid = sender as DataGridView; string source = " ở dòng: " + (e.RowIndex + 1).ToString() + ", trong cột: \"" + grid.Columns[e.ColumnIndex].HeaderText + "\""; if (ex != null) { switch (ex.NativeError) { case 25026: // Message "A foreign key value cannot be inserted because a corresponding primary key value does not exist. message = "Thông tin không đúng" + source; break; case 25016: // Message "A duplicate value cannot be inserted into a unique index. message = "Thông tin bị trùng" + source + ". Hãy xem lại!"; break; default: message = e.Exception.Message; break; } } else { switch (e.Exception.GetType().Name) { case "FormatException": message = "Dạng thông tin không đúng. Rất có thể bạn đã nhập một chữ vào" + " ô chỉ có thể nhập một số! Sửa lại" + source; break; case "InvalidOperationException": if (e.Exception.Message.Contains("max")) { message = "Độ dài thông tin vượt quá mức cho phép. \r\n" + e.Exception.Message; } break; } } FormTableViewer f = ((FormTableViewer)grid.Parent.Parent.Parent); if (f.radioSilent.Checked) { f.timer1.Enabled = true; System.Media.SystemSounds.Asterisk.Play(); f.errorProvider.BindToDataAndErrors(grid.DataSource, ""); f.errorProvider.SetError(f, message); statusText.Text = message; } else { Utility.Miscellaneous.ErrorMessage(message); } }
private void tablesToolStripMenuItem_DropDownItemClicked(object sender, ToolStripItemClickedEventArgs e) { try { object table = Enum.Parse(MM.Database.Tables.NULL.GetType(), e.ClickedItem.ToolTipText.Substring(1), true); if (table is MM.Database.Tables) { FormTableViewer viewer = getViewer((MM.Database.Tables)table); FormTableViewerTag tag = new FormTableViewerTag(db, (MM.Database.Tables)table); viewer.Tag = tag; viewer.Init(); viewer.Show(); } } catch (ArgumentException) { } catch (NullReferenceException) { } }
public FormTableViewer getViewer(GiangManh.MM.Database.Tables table) { string sql = "SELECT * FROM {0} "; switch (table) { case Database.Tables.Marks: sql += "ORDER BY st_id"; break; case Database.Tables.Students: sql += "ORDER BY gr_id ASC, no ASC"; break; } SqlCeResultSet r = db.Select(string.Format(sql, table)); FormTableViewer viewer = new FormTableViewer(); viewer._MMHostForm = this; viewer.MdiParent = this; viewer.Text = string.Format("{0} {1}", viewer.Text, table); viewer.grid.DataSource = r; FormTableViewerTag tag = new FormTableViewerTag(db, table); tag.expand = string.Format("{0}", table); viewer.Tag = tag; viewer.grid.DataError += new DataGridViewDataErrorEventHandler(grid_DataError); viewer.grid.CellValueChanged += new DataGridViewCellEventHandler(grid_CellValueChanged); string[] caption = db.TableCaptions(table); if (caption.Length == viewer.grid.Columns.Count) { for (int i = 0; i < viewer.grid.Columns.Count; i++) { viewer.grid.Columns[i].HeaderText = caption[i]; } } return(viewer); }
private void excelToolStripMenuItem_Click(object sender, EventArgs e) { FormTableViewer activeViewer = this.ActiveMdiChild as FormTableViewer; if (activeViewer == null) { activeViewer = this._MMActiveForm as FormTableViewer; } if (activeViewer == null) { Utility.Miscellaneous.ErrorMessage("Vui lòng mở cửa sổ chứa bảo dữ liệu cần chuyển sang Excel\n" + "trước khi vào mục này.\n"); return; } FormTableViewerTag tag = activeViewer.Tag as FormTableViewerTag; if (tag == null) { MessageBox.Show("Bảng dữ liệu này chỉ có thể dùng Quick Report để đưa sang Excel"); return; } string title = ""; switch (tag.Table) { case Database.Tables.CoursesSumUp: title = "BẢNG TỔNG KẾT ĐIỂM LỚP " + db.GetTip("co_id", int.Parse(tag.expand.Substring(("co_sta_").Length))); break; case Database.Tables.Courses: title = "DANH SÁCH PHÂN CÔNG GIẢNG DẠY"; break; case Database.Tables.Groups: title = "DANH SÁCH CÁC LỚP"; break; case Database.Tables.Marks: title = "BẢNG ĐIỂM LỚN"; break; case Database.Tables.Students: title = "DANH SÁCH HỌC SINH"; break; case Database.Tables.Teachers: title = "DANH SÁCH GIÁO VIÊN"; break; } SaveFileDialog saveFileDlg = new SaveFileDialog(); saveFileDlg.Filter = "Excel XML Document |*.excel.xml"; saveFileDlg.FileName = string.Format("{0} {1}", tag.Table, DateTime.Today.ToString("dd-MM-yyyy")); saveFileDlg.SupportMultiDottedExtensions = true; saveFileDlg.Title = "Xuat bang du lieu sang Excel"; if (saveFileDlg.ShowDialog() == DialogResult.OK) { StreamWriter sw = null; try { sw = new StreamWriter(saveFileDlg.OpenFile()); if (tag.Table == Database.Tables.CoursesSumUp) { sw.Write(tag.Db.ExportExcelXml(tag.expand, string.Format ("SELECT [{0}].st_id, students.name, [{0}].mark FROM [{0}]," + "students WHERE [{0}].st_id = students.st_id", tag.expand), title)); } else { sw.Write(tag.Db.ExportExcelXml(tag.Table.ToString(), string.Empty, title)); } sw.Flush(); if (Utility.Miscellaneous.Confirm ("Đã lưu xong:\n" + saveFileDlg.FileName + "\nBạn có muốn mở xem thử không?")) { System.Diagnostics.Process.Start(saveFileDlg.FileName); } } catch (Exception ex) { Utility.Miscellaneous.ErrorMessage("Có lỗi khi lưu kết quả\n" + ex.Message); } finally { if (sw != null) { sw.Close(); } } } }