예제 #1
0
        private void exp_excel(bool print)
        {
            try
            {
                d.check_process_Excel();
                int      i_rec = 0, be = 4, dong = 6, sodong = ads.Tables[0].Rows.Count + 6, socot = ads.Tables[0].Columns.Count - 1, dongke = sodong - 1;
                char[]   cSplit = { '+' };
                string[] sTitle = haison.Split(cSplit);
                i_rec   = sTitle.Length;
                tenfile = d.Export_Excel(ads, "HOSOBENHAN");
                oxl     = new Excel.Application();

                owb    = (Excel._Workbook)(oxl.Workbooks.Open(tenfile, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value));
                osheet = (Excel._Worksheet)owb.ActiveSheet;
                oxl.ActiveWindow.DisplayGridlines = true;

                for (int i = 0; i < be; i++)
                {
                    osheet.get_Range(d.getIndex(i) + "1", d.getIndex(i) + "1").EntireRow.Insert(Missing.Value);
                }
                osheet.get_Range(d.getIndex(0) + "5", d.getIndex(0) + "5").EntireRow.Delete(Missing.Value);                //remove row field
                osheet.get_Range(d.getIndex(0) + "4", d.getIndex(socot) + dongke.ToString()).Borders.LineStyle = XlBorderWeight.xlHairline;

                for (int i = 0; i < i_rec; i++)
                {
                    osheet.Cells[dong - 2, i + 1] = sTitle[i].ToString();
                }
                orange = osheet.get_Range(d.getIndex(i_rec * 2 + 4) + "4", d.getIndex(i_rec * 2 + 5) + "4");
                orange.HorizontalAlignment = XlHAlign.xlHAlignCenterAcrossSelection;
                orange.Font.Bold           = true;
                orange           = osheet.get_Range(d.getIndex(0) + "1", d.getIndex(socot) + sodong.ToString());
                orange.Font.Name = "Arial";
                orange.Font.Size = 8;
                orange.EntireColumn.AutoFit();
                oxl.ActiveWindow.DisplayZeros = false;
//				osheet.PageSetup.Orientation = XlPageOrientation.xlLandscape;
//				osheet.PageSetup.PaperSize = XlPaperSize.xlPaperA4;
//				osheet.PageSetup.LeftMargin = 20;
//				osheet.PageSetup.RightMargin = 20;
//				osheet.PageSetup.TopMargin = 30;
//				osheet.PageSetup.CenterFooter = "Trang : &P/&N";
                osheet.Cells[1, 1]         = d.Syte; osheet.Cells[2, 1] = d.Tenbv;
                orange                     = osheet.get_Range(d.getIndex(1) + "1", d.getIndex(3) + "2");
                orange.HorizontalAlignment = XlHAlign.xlHAlignCenterAcrossSelection;

                osheet.Cells[1, 8] = "SỔ VÀO VIỆN - RA VIỆN - CHUYỂN VIỆN";
                osheet.Cells[2, 8] = (tu.Text == den.Text) ? "Tháng " + tu.Text : "Từ ngày " + tu.Text + " đến ngày" + den.Text;
                if (s_tenkp.Trim().Trim(',') != "")
                {
                    osheet.Cells[3, 8] = s_tenkp;
                }
                orange = osheet.get_Range(d.getIndex(3) + "1", d.getIndex(socot - 1) + "3");

                orange.HorizontalAlignment = XlHAlign.xlHAlignCenterAcrossSelection;
                orange.Font.Size           = 12;
                orange.Font.Bold           = true;
                if (print)
                {
                    osheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
                }
                else
                {
                    oxl.Visible = true;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, this.Text, MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #2
0
 private void exp_excel(bool print)
 {
     try
     {
         d.check_process_Excel();
         int be = 3, cot = ds.Tables[0].Columns.Count, dong = ds.Tables[0].Rows.Count + be + 2;
         tenfile = d.Export_Excel(ds, "TONGHOP");
         oxl     = new Excel.Application();
         owb     = (Excel._Workbook)(oxl.Workbooks.Open(tenfile, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value));
         osheet  = (Excel._Worksheet)owb.ActiveSheet;
         oxl.ActiveWindow.DisplayGridlines = true;
         for (int i = 0; i < be; i++)
         {
             osheet.get_Range(d.getIndex(i) + "1", d.getIndex(i) + "1").EntireRow.Insert(Missing.Value);
         }
         for (int i = 0; i < 4; i++)
         {
             osheet.Cells[be + 1, i + 1] = get_ten(i);
         }
         DataRow[] dr = dsmabd.Tables[0].Select("true", "tenbd");
         for (int i = 0; i < dr.Length; i++)
         {
             osheet.Cells[be + 1, i + 5] = dr[i]["tenbd"].ToString();
             osheet.Cells[dong, i + 5]   = dr[i]["soluong"].ToString();
         }
         orange = osheet.get_Range(d.getIndex(be) + "4", d.getIndex(cot - 1) + "4");
         orange.VerticalAlignment = XlVAlign.xlVAlignBottom;
         orange.Orientation       = 90;
         orange.RowHeight         = 200;
         orange.EntireRow.AutoFit();
         orange           = osheet.get_Range(d.getIndex(0) + "1", d.getIndex(cot - 1) + dong.ToString());
         orange.Font.Name = "Arial";
         orange.Font.Size = 10;
         orange.Font.Bold = false;
         osheet.get_Range(d.getIndex(0) + "4", d.getIndex(cot - 1) + dong.ToString()).Borders.LineStyle = XlBorderWeight.xlHairline;
         //orange.EntireRow.AutoFit();
         orange.EntireColumn.AutoFit();
         osheet.get_Range(d.getIndex(3) + dong.ToString(), d.getIndex(cot - 1) + dong.ToString()).Font.Bold = true;
         oxl.ActiveWindow.DisplayZeros = false;
         osheet.Cells[1, 2]            = "";//makp.Text;
         osheet.Cells[2, 3]            = (tu.Text == den.Text) ? "Ngày " + tu.Text : "Ngày " + tu.Text + " - " + den.Text;
         osheet.Cells[1, 3]            = "TỔNG HỢP SỬ DỤNG THUỐC";
         orange = osheet.get_Range(d.getIndex(2) + "1", d.getIndex(cot - 1) + "2");
         orange.HorizontalAlignment = XlHAlign.xlHAlignCenterAcrossSelection;
         try
         {
             orange.Font.Size             = 12;
             orange.Font.Bold             = true;
             osheet.PageSetup.Orientation = XlPageOrientation.xlLandscape;
             osheet.PageSetup.PaperSize   = XlPaperSize.xlPaperA4;
             osheet.PageSetup.LeftMargin  = 20;
             osheet.PageSetup.RightMargin = 20;
             osheet.PageSetup.TopMargin   = 30;
         }
         catch { }
         osheet.PageSetup.CenterFooter = "Trang : &P/&N";
         if (print)
         {
             osheet.PrintOut(Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);
         }
         else
         {
             oxl.Visible = true;
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }