/// <summary> /// hàm thực hiện in phiếu báo cáo /// thông tin /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void cmdBaoCao_Click(object sender, EventArgs e) { try { string nhomthuoc = "-1"; if (Utility.Int32Dbnull(txtKho.MyID, -1) < 0) { Utility.ShowMsg("Bạn phải chọn Kho thuốc"); txtKho.Focus(); return; } nhomthuoc = txtLoaithuoc.MyID.ToString(); DataTable m_dtReport = null; string fromdate = "01/01/1900"; string todate = "01/01/1900"; string _value = "1"; if (optThang.Checked) { if (cboThang.SelectedIndex < 0) { Utility.ShowMsg("Bạn phải chọn Tháng báo cáo"); cboThang.Focus(); return; } _value = cboThang.SelectedValue.ToString(); switch (_value) { case "2": fromdate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 29).ToString("dd/MM/yyyy"); break; case "4": case "6": case "9": case "11": fromdate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 30).ToString("dd/MM/yyyy"); break; default: fromdate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, Utility.Int32Dbnull(_value, 2), 31).ToString("dd/MM/yyyy"); break; } } else if (optQuy.Checked) { if (cboQuy.SelectedIndex < 0) { Utility.ShowMsg("Bạn phải chọn Quý báo cáo"); cboQuy.Focus(); return; } _value = cboQuy.SelectedValue.ToString(); switch (_value) { case "1": fromdate = new DateTime(dtpNam.Value.Year, 1, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 3, 31).ToString("dd/MM/yyyy"); break; case "2": fromdate = new DateTime(dtpNam.Value.Year, 4, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 6, 30).ToString("dd/MM/yyyy"); break; case "3": fromdate = new DateTime(dtpNam.Value.Year, 7, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 9, 30).ToString("dd/MM/yyyy"); break; case "4": fromdate = new DateTime(dtpNam.Value.Year, 10, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 12, 31).ToString("dd/MM/yyyy"); break; default: fromdate = new DateTime(dtpNam.Value.Year, 1, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 12, 31).ToString("dd/MM/yyyy"); break; } } else if (optNam.Checked) { fromdate = new DateTime(dtpNam.Value.Year, 1, 1).ToString("dd/MM/yyyy"); todate = new DateTime(dtpNam.Value.Year, 12, 31).ToString("dd/MM/yyyy"); } else { fromdate = dtFromDate.Value.ToString("dd/MM/yyyy"); todate = dtToDate.Value.ToString("dd/MM/yyyy"); } byte kieubiendong = (byte)cboKieutonghop.SelectedIndex; string xmlFile = "ThuocBaocaophatsinhTonghop.xml"; if (cboKieubangke.SelectedIndex == 0) { xmlFile = "ThuocBaocaophatsinhChitiet.xml"; m_dtReport = BAOCAO_THUOC.ThuocBaocaophatsinhChitiet(fromdate, todate, Utility.Int32Dbnull(txtKho.MyID), Utility.Int32Dbnull(txtthuoc.MyID, -1), kieubiendong, nhomthuoc, 1, Utility.Int32Dbnull(txtKhoXuat.MyID, -1)); } else { xmlFile = "ThuocBaocaophatsinhTonghop.xml"; m_dtReport = BAOCAO_THUOC.ThuocBaocaophatsinhTonghop(fromdate, todate, Utility.Int32Dbnull(txtKho.MyID), Utility.Int32Dbnull(txtthuoc.MyID, -1), kieubiendong, nhomthuoc, 1, Utility.Int32Dbnull(txtKhoXuat.MyID, -1)); } THU_VIEN_CHUNG.CreateXML(m_dtReport, xmlFile); Utility.SetDataSourceForDataGridEx(cboKieutonghop.SelectedIndex == 0?grdTonghop: grdChitiet, m_dtReport, true, true, "1=1", ""); if (m_dtReport == null || m_dtReport.Rows.Count <= 0) { Utility.ShowMsg("Không tìm thấy dữ liệu báo cáo", "Thông báo"); return; } string FromDateToDate = Utility.FromToDateTime(dtFromDate.Text, dtToDate.Text); thuoc_baocao.ThuocBaocaophatsinh(m_dtReport, baocaO_TIEUDE1.MA_BAOCAO, baocaO_TIEUDE1.TIEUDE, dtNgayIn.Value, FromDateToDate, Utility.sDbnull(txtKho.Text)); } catch (Exception ex) { Utility.ShowMsg(ex.Message); } }