internal void m_mthPrint() { if (m_objViewer.m_dgvAskMedMain.Rows.Count <= 0) { return; } if (m_objViewer.tabControl1.SelectedIndex == 0) { int m_intRowIndex = m_objViewer.m_dgvAskMedMain.CurrentCell.RowIndex; string m_strTemp = Convert.ToString(m_objViewer.m_dgvAskMedMain.Rows[m_intRowIndex].Cells["m_txtBillNo"].Value); DataStore ds = new DataStore(); ds.LibraryList = Application.StartupPath + "\\PB_OP.pbl"; ds.DataWindowObject = "d_op_askmedicine"; if (m_objViewer.m_blnIsHospital) { ds.Modify("t_3.text = '住院单位'"); ds.Modify("t_1.text='" + m_objComInfo.m_strGetHospitalTitle() + "住院药房请领单'"); } else { ds.Modify("t_1.text='" + m_objComInfo.m_strGetHospitalTitle() + "门诊药房请领单'"); } ds.Modify("t_aksdept.text='" + Convert.ToString(m_objViewer.m_dgvAskMedMain.Rows[m_intRowIndex].Cells["m_txtAskDeptName"].Value) + "'"); ds.Modify("t_askid.text='" + m_strTemp + "'"); ds.Modify("t_asktime.text='" + Convert.ToDateTime(m_objViewer.m_dgvAskMedMain.Rows[m_intRowIndex].Cells["m_txtAskDate"].Value).ToString("yyyy年MM月dd日") + "'"); ds.Modify("t_asker.text='" + Convert.ToString(m_objViewer.m_dgvAskMedMain.Rows[m_intRowIndex].Cells["m_txtAskName"].Value) + "'"); DataTable m_dtbSub = this.m_objViewer.m_dgvAskMedDetail.DataSource as DataTable; DataRow[] drArr = m_dtbSub.Select("seriesid_int is not null and seriesid2_int is not null"); for (int i = 0; i < drArr.Length; i++) { int row = ds.InsertRow(0); ds.SetItemString(row, "RowNo", Convert.ToString(i + 1)); ds.SetItemString(row, "MedCode", drArr[i]["assistcode_chr"].ToString()); ds.SetItemString(row, "MedName", drArr[i]["MEDICINENAME_VCHR"].ToString()); ds.SetItemString(row, "MedSepc", drArr[i]["MEDSPEC_VCHR"].ToString()); ds.SetItemString(row, "OPAmount", drArr[i]["OPAMOUNT_INT"].ToString()); ds.SetItemString(row, "OPUnit", drArr[i]["OPUNIT_CHR"].ToString()); ds.SetItemString(row, "IPAmount", drArr[i]["AMOUNT_INT"].ToString()); ds.SetItemString(row, "IPUnit", drArr[i]["UNIT_CHR"].ToString()); ds.SetItemString(row, "Package", drArr[i]["PACKQTY_DEC"].ToString()); } com.digitalwave.iCare.gui.MedicineStore.clsCtl_Public.PrintDialog(ds); } else { /* 三院格式 * int p_intRowIndex = this.m_objViewer.m_dgvOutStorageMain.CurrentCell.RowIndex; * DataTable p_OutDtbVal = new DataTable(); * clsDcl_MedicineOut m_objDo = new clsDcl_MedicineOut(); * long p_lngSeqid = Convert.ToInt64(this.m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtSeqid"].Value); * m_objDo.m_lngGetOutStorageDetailReportForGY3Y(p_lngSeqid, out p_OutDtbVal); * * DataStore ds = new DataStore(); * ds.LibraryList = Application.StartupPath + "\\pb_gy3y_ms.pbl"; * ds.DataWindowObject = "ms_outstoragedetail"; * ds.Reset(); * ds.Modify("t_title.text='" + this.m_objViewer.objController.m_objComInfo.m_strGetHospitalTitle() + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtStorageName"].Value) + "出库凭证'"); * ds.Modify("m_storagename.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtStorageName"].Value) + "'"); * ds.Modify("m_txtreceivedept.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtAskDepName"].Value) + "'"); * ds.Modify("m_txtman.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtMakerName"].Value) + "'"); * //ds.Modify("m_txtman2.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtMakerName"].Value) + "'"); * ds.Modify("m_txtman3.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtMakerName"].Value) + "'"); * ds.Modify("m_txtman4.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtExamerName"].Value) + "'"); * ds.Modify("m_txtoutputorder.text='" + Convert.ToString(m_objViewer.m_dgvOutStorageMain.Rows[p_intRowIndex].Cells["m_txtOutStorageid"].Value) + "'"); * ds.Modify("t_RowNum.text='" + p_OutDtbVal.Rows.Count + "'"); * ds.Retrieve(p_OutDtbVal); * com.digitalwave.iCare.gui.MedicineStore.clsCtl_Public.PrintDialog(ds); */ decimal decTMoney; decTMoney = Convert.ToDecimal(m_objViewer.m_lblRetailSubMoney.Text.Replace("元", "")); string strAllInMoney = new Money(decTMoney).ToString(); if (m_objViewer.m_dgvOutStorageDetail.Rows.Count == 0) { MessageBox.Show("抱歉,没有数据可打印!", "药品出库", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } int intPrintType; m_objDomain.m_lngGetPrinType(out intPrintType); frmMedicineOutReport frmReport = new frmMedicineOutReport(); DataTable p_OutDtbVal = new DataTable(); this.m_objDomain.m_lngGetOutStorageDetailReport(Convert.ToInt64(this.m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtSeqid"].Value), intPrintType, out p_OutDtbVal); DataRow dro; int i_temp = 0; DataTable dtb = new DataTable(); string RoomName = m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtStorageName"].Value.ToString(); if (intPrintType == 0) { dtb = p_OutDtbVal.Clone(); for (int i_low = 0; i_low < p_OutDtbVal.Rows.Count; i_low++) { i_temp++; dtb.ImportRow(p_OutDtbVal.Rows[i_low]); //药品和材料不能打在同一张 if (((i_low + 1) >= p_OutDtbVal.Rows.Count) || ((p_OutDtbVal.Rows[i_low]["medicinetypesetid"].ToString()) != (p_OutDtbVal.Rows[i_low + 1]["medicinetypesetid"].ToString()))) { int ros = 7 - i_temp % 7; if (ros != 7) { int i_valCount = dtb.Rows.Count + ros; for (int i = 0; i < ros; i++) { dro = dtb.NewRow(); dtb.Rows.Add(dro); } i_temp = 0; } } } frmReport.datWindow.DataWindowObject = "outstorage_detailreport_lj"; } if (intPrintType == 1) { dtb = p_OutDtbVal.Copy(); frmReport.datWindow.DataWindowObject = "outstorage_detailreport_cs"; } frmReport.ReceiveDept = m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtAskDepName"].Value.ToString(); frmReport.OutputOrder = m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtOutStorageid"].Value.ToString(); string mmm = new Money(decTMoney).ToString(); frmReport.strBigwrith = mmm; frmReport.zDate = Convert.ToDateTime(m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtExamDate"].Value).ToString("yyyy年MM月dd日 HH时mm分ss秒"); frmReport.Man = m_objViewer.m_dgvOutStorageMain.SelectedRows[0].Cells["m_txtExamerName"].Value.ToString(); frmReport.RoomName = RoomName; frmReport.dtb = dtb; frmReport.i_showType = 1; frmReport.strAllInMoney = strAllInMoney; frmReport.ShowDialog(); } }