/// <summary>
        /// Hàm lấy dữ liệu từ file excel
        /// </summary>
        public void Napdulieu()
        {
            try
            {
                var save = new SqlBulkCopy();
                var tbxp = save.tbXepPhong();

                var tbsvError    = GetTable();
                var stt          = uG_DanhSach.Rows.Count;
                var frmNapDuLieu = new FrmNDLSinhVien(stt, GetTable());
                frmNapDuLieu.ShowDialog();
                var resultValue = frmNapDuLieu.ResultValue;
                if (resultValue == null || resultValue.Rows.Count == 0)
                {
                    return;
                }
                var tbsv = LoadData.Load(2);
                foreach (DataRow row in resultValue.Rows)
                {
                    var check = false;
                    foreach (DataRow row1 in tbsv.Rows)
                    {
                        if (row.ItemArray[1].ToString() != row1.ItemArray[0].ToString())
                        {
                            continue;
                        }
                        check = true;
                        tbxp.Rows.Add(row.ItemArray[1].ToString(), _idkythi, null);
                    }
                    if (!check)
                    {
                        tbsvError.Rows.Add(1, row.ItemArray[1], row.ItemArray[2], row.ItemArray[3], row.ItemArray[4], row.ItemArray[5]);
                    }
                }


                if (tbsvError.Rows.Count > 0)
                {
                    const string text = @"Thao tác không hoành thành vì có sv đăng ký dự thi chưa có trong từ điển";
                    var          frm  = new FrmMsgImportSv(text, tbsvError, 1);
                    frm.ShowDialog();
                }
                else
                {
                    save.InsertTable("XEPPHONG", tbxp);
                    //var table = (DataTable)uG_DanhSach.DataSource;
                    //table.Merge(resultValue);
                    //uG_DanhSach.DataSource = table;
                    //MessageBox.Show(@"Import thành công " + resultValue.Rows.Count + @" Sinh viên. Nhấn F5 để lưu lại");
                }
            }
            catch (Exception ex)
            {
                Log2File.LogExceptionToFile(ex);
            }
        }
 public void Ghi()
 {
     if (uG_DanhSach.Rows.Count <= 0)
     {
         return;
     }
     _bgwInsert.RunWorkerAsync();
     OnShowDialog("Đang lưu dữ liệu");
     if (_tbError.Rows.Count > 0)
     {
         var text = @"Còn " + _tbError.Rows.Count + @" sinh viên chưa được lưu vào CSDL";
         var frm  = new FrmMsgImportSv(text, _tbError, 1);
         frm.ShowDialog();
     }
 }
 protected override void LoadFormDetail()
 {
     try
     {
         var tb = SearchData.KtraChamThi(_idkythi);
         if (tb.Rows.Count > 0)
         {
             if (DialogResult.No ==
                 MessageBox.Show(@"Bài thi của sv đã được chấm bạn có muốn chấm lại không.",
                                 FormResource.MsgCaption,
                                 MessageBoxButtons.YesNo,
                                 MessageBoxIcon.Question))
             {
                 dgv_DanhSach.DataSource = tb;
                 pnl_from.Visible        = true;
                 return;
             }
         }
         var thread = new Thread(LoadGrid)
         {
             IsBackground = true
         };
         thread.Start();
         OnShowDialog("Loading...");
         if (_tbError.Rows.Count > 0)
         {
             var text = @"Còn " + _tbError.Rows.Count + @" bài thi chưa được chấm";
             var frm  = new FrmMsgImportSv(text, _tbError, 2);
             frm.ShowDialog();
         }
         pnl_from.Visible = true;
     }
     catch (Exception ex)
     {
         Log2File.LogExceptionToFile(ex);
     }
 }