コード例 #1
0
        private void btnPhanBoChiTiet_Click(object sender, EventArgs e)
        {
            if (IDKQHT_ChuongTrinhDaoTao > 0)
            {
                Lib.clsExportToWord cls = new Lib.clsExportToWord();
                try
                {
                    DataTable dt = oBXL_MonHocTrongKy.GetMonKyToanKhoaByLop(IDDM_Lop);
                    if (dt.Rows.Count > 0)
                    {
                        CreateWaitDialog("Xuất dữ liệu", "Đang xuất dữ liệu ra file");
                        try
                        {
                            Microsoft.Office.Interop.Word.ApplicationClass WordApp = new Microsoft.Office.Interop.Word.ApplicationClass();
                            Microsoft.Office.Interop.Word.Document         aDoc    = null;
                            cls.InitWord(WordApp, ref aDoc, 13);

                            DataTable dtNamKy = new Lib.clsDataTableHelper().SelectDistinct(dt, new string[] { "TenNamHoc", "HocKy" });
                            foreach (DataRow dr in dtNamKy.Rows)
                            {
                                DataView dv = new DataView(dt);
                                dv.RowFilter = "TenNamHoc = '" + dr["TenNamHoc"] + "' And HocKy = " + dr["HocKy"];
                                cls.AddText(aDoc, "\tCác môn học trong học kỳ " + dr["HocKy"] + " năm học " + dr["TenNamHoc"], 0, 0, Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphLeft);
                                cls.AddTable(aDoc, dv.ToTable(), new string[] { "Tên môn học", "Số học trình", "Số tiết", "Lý thuyết", "Thực hành" },
                                             new string[] { "TenMonHoc", "SoHocTrinh", "SoTiet", "LyThuyet", "ThucHanh" });
                                cls.AddText(aDoc, "", 0, 0, Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphLeft);
                            }
                            WordApp.Visible = true;
                            CloseWaitDialog();
                        }
                        catch (Exception ex)
                        {
                            CloseWaitDialog();
                            ThongBaoLoi("File word đang được mở. Đề nghị đóng file này trước khi xuất dữ liệu! Thông báo lỗi: " + ex.Message);
                            return;
                        }
                    }
                    else
                    {
                        ThongBao("Lớp này chưa được phân bổ các môn trong kỳ.");
                    }
                }
                catch (Exception ex)
                {
                    ThongBaoLoi("Có lỗi xảy ra: " + ex.Message);
                }
            }
            else
            {
                ThongBao("Lớp này chưa có chương trình đào tạo");
            }
        }