Beispiel #1
0
        private void frmThuHocPhi_FormClosed(object sender, FormClosedEventArgs e)
        {
            //Kiểm tra và cập nhật DTDKLop và CTThuTien
            string sql = "";

            if (dt == null || dt.Rows.Count == 0)
            {
                return;
            }
            DataTable dtChange = dt.GetChanges();

            if (dtChange != null && dtChange.Rows.Count > 0)
            {
                decimal phainop = Convert.ToDecimal(_drvDKLop["TTien"]);
                decimal danop   = Convert.ToDecimal(_drvDKLop["TDaNop"]);
                decimal conlai  = Convert.ToDecimal(_drvDKLop["TConLai"]);
                foreach (DataRow dr in dtChange.Rows)
                {
                    if (dr.RowState == DataRowState.Added)
                    {
                        //Cập nhật chi tiết thu tiền
                        sql   += GetStringInsertCTThuTien(dr);
                        danop += Convert.ToDecimal(dr["SoTien"]);
                    }
                    if (dr.RowState == DataRowState.Deleted)
                    {
                        // kiểm tra phiếu thu đã duyệt hay chưa, nếu duyệt rồi thì thông báo không cho xóa.
                        if (!KiemTraDuyetPhieuThu(dr))
                        {
                            return;
                        }
                        // xóa chi tiết thu tiền.
                        DeleteCTThuTien(dr);
                        // tiến hành xóa phiếu thu.
                        quanlyCT.Delete_MT11_MT15_MT43_BLTK_BLVT(dr);
                        // cập nhật lại thực nộp + còn lại
                        danop -= Convert.ToDecimal(dr["SoTien", DataRowVersion.Original]);
                    }
                }
                conlai = phainop - danop;
                _drvDKLop["TDaNop"]  = danop;
                _drvDKLop["TConLai"] = conlai;
                //Cập nhập DTDKLop
                sql += GetStringUpdateDTDKLop(_drvDKLop);
                if (sql != "" && db.UpdateByNonQuery(sql))
                {
                    XtraMessageBox.Show("Cập nhật dữ liệu thành công!",
                                        Config.GetValue("PackageName").ToString());
                }
            }
        }
Beispiel #2
0
 private void UpdatePhieuThus()
 {
     //foreach (DataRowView drv in dvDTDKLop)
     //{
     quanlyCT = new QuanLyCT(hvInfo.maHV, hvInfo.tenHV, _data.DbData);
     // thêm
     if (drMaster.RowState == DataRowState.Added)
     {
         // nếu có nộp tiền thì mới tạo phiếu thus
         if (drMaster["HTTT"] != DBNull.Value && (decimal)drMaster["TDaNop"] > 0)
         {
             Insert_MT11_MT15_MT43_BLTK_BLVT(true);
             // Lưu lại những dòng có xử lý để update dữ liệu vào DTDKLop
             // tránh việc dữ liệu được gán vào cell nhưng chưa thật sự lưu xuống database.
             //GetListChanges_DTDKLopID(drv);
         }
     }
     // Sửa..
     // Ở đây không sử dụng table.Getchanges(state) để lấy ra table chứa những dòng modified vì
     // không phải bất cứ sự thay đổi nào trên những dòng đó đều lấy ra modified
     // mà chỉ lấy khi 1 số fields bên dứoi thay đổi.
     if (drMaster.RowState == DataRowState.Modified)
     {
         if (drMaster["NgayTN"].ToString() != drMaster["NgayTN", DataRowVersion.Original].ToString() ||
             drMaster["HTTT"].ToString() != drMaster["HTTT", DataRowVersion.Original].ToString()
             //|| drMaster["TienGT"].ToString() != drMaster["TienGT", DataRowVersion.Original].ToString()
             //|| drMaster["TienHP"].ToString() != drMaster["TienHP", DataRowVersion.Original].ToString()
             || drMaster["TDaNop"].ToString() != drMaster["TDaNop", DataRowVersion.Original].ToString() ||
             drMaster["HVTVID"].ToString() != drMaster["HVTVID", DataRowVersion.Original].ToString())
         {
             Update_MT11_MT15_MT43_BLTK_BLVT();
             // Lưu lại những dòng có xử lý để update dữ liệu vào DTDKLop
             // tránh việc dữ liệu được gán vào cell nhưng chưa thật sự lưu xuống database.
             //GetListChanges_DTDKLopID(drv);
         }
     }
     // xóa
     if (drMaster.RowState == DataRowState.Deleted)
     {
         quanlyCT.Delete_MT11_MT15_MT43_BLTK_BLVT(drMaster);
         // Lưu lại những dòng có xử lý để update dữ liệu vào DTDKLop
         // tránh việc dữ liệu được gán vào cell nhưng chưa thật sự lưu xuống database.
         //GetListChanges_DTDKLopID(drv);
     }
     //}
     //decimal a = DangKyLopICC.DangKyLopICC.f_TongTienBL;
 }