private void btnXem_Click(object sender, EventArgs e)
        {
            if (SqlDataAccessHelper.TestConnection(SqlDataAccessHelper.ConnectionString) == false)
            {
                AutoClosingMessageBox.Show("Mất kết nối với CSDL. Vui lòng thử lại sau.", "Lỗi", 2000);
                return;
            }
            //1. lấy dữ liệu từ form

            #region lấy ngày BD và kết thúc nếu quá 62 ngày thì báo

            dtpNgayBD.Update();
            dtpNgayKT.Update();
            var ngayBD = dtpNgayBD.Value.Date;
            var ngayKT = dtpNgayKT.Value.Date;
            #endregion


            BindingContext[dgrdDSNVTrgPhg.DataSource].EndCurrentEdit();
            //2. lấy danh sách nhân viên check, nếu chưa có nv nào check thì thông báo
            IEnumerable <DataGridViewRow> lstGridViewRow = dgrdDSNVTrgPhg.Rows.Cast <DataGridViewRow>();
            var listNV = (from row in (lstGridViewRow)
                          where ((DataRowView)row.DataBoundItem)["check"] != DBNull.Value && (bool)((DataRowView)row.DataBoundItem)["check"]
                          select(cUserInfo)((DataRowView)row.DataBoundItem).Row["cUserInfo"]).ToList();

            if (listNV.Count == 0)
            {
                AutoClosingMessageBox.Show("Bạn chưa chọn Nhân viên", "Thông báo", 2000);
                GC.Collect();
                return;
            }

            /*m_Bang_TongHopXemCong.Rows.Clear();
             * m_Bang_GioKDQD.Rows.Clear();
             * m_Bang_GioThieuCheck.Rows.Clear();*/
            m_Bang_PH_Them.Rows.Clear();
            XL.LayBang_PH_Them(listNV, ngayBD, ngayKT, ref m_Bang_PH_Them);
            XL.LayBang_PH_Xoaa(listNV, ngayBD, ngayKT, ref m_Bang_PH_Xoaa);
            XL.LayBang_PH_GioGoc(listNV, ngayBD, ngayKT, ref m_Bang_PH_GioGoc);
            XL.LayBang_GioDaXN(listNV, ngayBD, ngayKT, ref m_Bang_GioDaXN);
            dgrdPH_Them.DataSource   = m_Bang_PH_Them;
            dgrdPH_Xoaa.DataSource   = m_Bang_PH_Xoaa;
            dgrdPH_GioGoc.DataSource = m_Bang_PH_GioGoc;
            dgrdGioDaXN.DataSource   = m_Bang_GioDaXN;
        }
        private void btnXem_Click(object sender, EventArgs e)
        {
            if (XL2.KiemtraKetnoiCSDL() == false)
            {
                return;
            }
            //1. lấy dữ liệu từ form

            #region lấy ngày BD và kết thúc nếu quá 62 ngày thì báo

            dtpNgayBD.Update();
            dtpNgayKT.Update();
            var ngayBD = dtpNgayBD.Value.Date;
            var ngayKT = dtpNgayKT.Value.Date;
            #endregion


            BindingContext[dgrdDSNVTrgPhg.DataSource].EndCurrentEdit();
            #region             //2. lấy danh sách nhân viên check, nếu chưa có nv nào check thì thông báo

            var listNV = (from DataGridViewRow dataGridViewRow in dgrdDSNVTrgPhg.Rows
                          let rowView = dataGridViewRow.DataBoundItem as DataRowView
                                        where (rowView["check"] != DBNull.Value && (bool)rowView["check"])
                                        select(cUserInfo) rowView["cUserInfo"])
                         .ToList();

            if (listNV.Count == 0)
            {
                ACMessageBox.Show(Resources.Text_ChuaChonNV, Resources.Caption_ThongBao, 2000);                 //
                GC.Collect();
                return;
            }

            #endregion
            XL.LayBang_PH_Them(listNV, ngayBD, ngayKT, ref m_Bang_PH_Them);
            XL.LayBang_PH_Xoaa(listNV, ngayBD, ngayKT, ref m_Bang_PH_Xoaa);
            XL.LayBang_PH_GioGoc(listNV, ngayBD, ngayKT, ref m_Bang_PH_GioGoc);
            XL.LayBang_GioDaXN(listNV, ngayBD, ngayKT, ref m_Bang_GioDaXN);
            dgrdPH_Them.DataSource   = m_Bang_PH_Them;
            dgrdPH_Xoaa.DataSource   = m_Bang_PH_Xoaa;
            dgrdPH_GioGoc.DataSource = m_Bang_PH_GioGoc;
            dgrdGioDaXN.DataSource   = m_Bang_GioDaXN;
        }