예제 #1
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            if (!CheckValid())
            {
                return;
            }
            if (grvLop.DataRowCount > 0)
            {
                int KiemTra = 0;
                for (int i = 0; i < grvLop.DataRowCount; i++)
                {
                    if ((bool)(grvLop.GetDataRow(i)["Chon"]) == true)
                    {
                        KiemTra  += 1;
                        TongSoSV += int.Parse(grvLop.GetDataRow(i)["SoSinhVien"].ToString());
                    }
                }
                if (KiemTra < 2)
                {
                    ThongBao("Bạn phải chọn ít nhất 2 lớp cần gộp");
                }
                else
                {
                    cBXL_MonHocTrongKy oBXL_MonHocTrongKy = new cBXL_MonHocTrongKy();
                    int ParentID = 0;
                    for (int i = 0; i < grvLop.DataRowCount; i++)
                    {
                        if ((bool)(grvLop.GetDataRow(i)["Chon"]) == true)
                        {
                            GetpLopTachGopInfo(grvLop.GetDataRow(i));
                            GetpLopTachMonHocInfo(grvLop.GetDataRow(i));
                            if (i == 0)
                            {
                                pXL_LopTachGopInfo.ParentID = 0;
                                ParentID = oBXL_LopTachGop.Add(pXL_LopTachGopInfo);

                                pXL_LopTachGop_MonHocInfo.IDXL_LopTachGop = ParentID;
                            }
                            else
                            {
                                pXL_LopTachGopInfo.ParentID = ParentID;
                                pXL_LopTachGop_MonHocInfo.IDXL_LopTachGop = oBXL_LopTachGop.Add(pXL_LopTachGopInfo);
                            }

                            oBXL_LopTachGop_MonHoc.Add(pXL_LopTachGop_MonHocInfo);
                            // Thiết lập lại giá trị HocOLopTachGop của bảng MonHocTrongKy thành true
                            oBXL_MonHocTrongKy.UpdateTachGop(pXL_LopTachGop_MonHocInfo.IDXL_MonHocTrongKy, true);
                            // ghi log
                            GhiLog("Thêm lớp gộp '" + txtTenLopGop.Text.Trim() + "' vào CSDL", "Thêm", this.Tag.ToString());
                        }
                    }
                    this.Tag = "1";
                    this.Close();
                }
            }
        }
예제 #2
0
        private void btnCapNhat_Click(object sender, EventArgs e)
        {
            if (grvChiTiet.DataRowCount > 0)
            {
                int    TongSoSV      = 0;
                string TenCacLopTach = "";
                for (int i = 0; i < dtChiTiet.Rows.Count; i++)
                {
                    TongSoSV += int.Parse(dtChiTiet.Rows[i]["SoSinhVien"].ToString());
                }
                if (TongSoSV == int.Parse(cmbLop.GetColumnValue("SoSinhVien").ToString()))
                {
                    if (edit == EDIT_MODE.THEM)
                    {
                        int ParentID = 0;
                        // kiem tra tong so sinh vien

                        for (int i = 0; i < dtChiTiet.Rows.Count; i++)
                        {
                            GetpLopTachGopInfo(dtChiTiet.Rows[i]);
                            GetpLopTachMonHocInfo(dtChiTiet.Rows[i]);
                            if (i == 0)
                            {
                                pXL_LopTachGopInfo.ParentID = 0;
                                ParentID       = oBXL_LopTachGop.Add(pXL_LopTachGopInfo);
                                TenCacLopTach += pXL_LopTachGopInfo.TenLopTachGop;
                                pXL_LopTachGop_MonHocInfo.IDXL_LopTachGop = ParentID;
                            }
                            else
                            {
                                pXL_LopTachGopInfo.ParentID = ParentID;
                                pXL_LopTachGop_MonHocInfo.IDXL_LopTachGop = oBXL_LopTachGop.Add(pXL_LopTachGopInfo);
                            }

                            oBXL_LopTachGop_MonHoc.Add(pXL_LopTachGop_MonHocInfo);
                        }

                        // Thiết lập lại giá trị HocOLopTachGop của bảng MonHocTrongKy thành true
                        cBXL_MonHocTrongKy oBXL_MonHocTrongKy = new cBXL_MonHocTrongKy();
                        oBXL_MonHocTrongKy.UpdateTachGop(pXL_LopTachGop_MonHocInfo.IDXL_MonHocTrongKy, true);

                        // ghi log
                        GhiLog("Thêm các lớp tách '" + TenCacLopTach + "' vào CSDL", "Thêm", this.Tag.ToString());

                        DataRow[] drMon = dtMonHoc.Select("XL_MonHocTrongKyID = " + cmbMonHoc.EditValue.ToString());
                        if (drMon.Length > 0)
                        {
                            drMon[0]["HocOLopTachGop"] = true;
                        }

                        frmLopTach_Load(null, null);
                    }
                    else
                    {
                        cmbMonHoc.Enabled = true;
                        cmbKhoa.Enabled   = true;
                        cmbLop.Enabled    = true;
                        SuaThanhCong();
                        ResetControls();
                    }
                }
                else
                {
                    ThongBaoLoi("Tổng sinh viên của các lớp tách không cân bằng!");
                }
            }
        }