private DataTable XuLyBaoCao() { DataSet ds = oBNS_GiaoVien.GetBaoCaoChatLuongDoiNguGiaoVien((DateTime)dtpDenNgay.EditValue); DataTable dtNganhDaoTao = ds.Tables[0]; if (dtNganhDaoTao.Rows.Count <= 0) { ThongBao("Không có dữ liệu về ngành đào tạo"); return(null); } int STT = 0; foreach (DataRow dr in dtNganhDaoTao.Rows) { if (int.Parse(dr["ParentNganhDaoTaoID"].ToString()) == 0) { STT = 0; } else { STT++; dr["STT"] = STT; } } DataRow drNew = dtNganhDaoTao.NewRow(); drNew["TenNganhDaoTao"] = "Cộng"; dtNganhDaoTao.Rows.Add(drNew); CreateTable(ref dtNganhDaoTao); DataTable dtTemp, dt = ds.Tables[1]; if (dt.Rows.Count <= 0) { ThongBao("Không có thông tin Giáo viên về ngành đào tạo !"); return(null); } DataView dv; DataRow _dr; for (int i = 0; i < dtNganhDaoTao.Rows.Count - 1; i++) { _dr = dtNganhDaoTao.Rows[i]; if (int.Parse(_dr["ParentNganhDaoTaoID"].ToString()) == 0) { dv = new DataView(dt); dv.RowFilter = "ParentNganhDaoTaoID = " + _dr["IDNganhDaoTao"]; if (dv.Count > 0) { dtTemp = dv.ToTable(); SetItemValue(dtTemp, ref _dr); } } else { dv = new DataView(dt); dv.RowFilter = "IDNganhDaoTao = " + _dr["IDNganhDaoTao"]; if (dv.Count > 0) { dtTemp = dv.ToTable(); SetItemValue(dtTemp, ref _dr); } } } _dr = dtNganhDaoTao.Rows[dtNganhDaoTao.Rows.Count - 1]; SetItemValue(dt, ref _dr); return(dtNganhDaoTao); }