public override void ImprimirEnOtroFormato() { string nombreArchivo = ""; string logoEmpresa = ""; Bitmap imgLogo; double monto = 0; try { nombreArchivo = Environment.CurrentDirectory + @"\Reportes\cajaReciboOtros.frx"; monto = objUtil.GetAsDouble("Monto", DTVistaData.Rows[0]); montoLetras = Numalet.ToCardinal(monto); using (FastReport.Report report = new FastReport.Report()) { report.Load(nombreArchivo); report.RegisterData(DTVistaData, "VCAJAS_RECIBOS"); report.RegisterData(DTOficina, "VEMPRESAS_OFICINAS"); report.SetParameterValue("MONTO_LETRA", montoLetras); //Vamos a asignar el logo logoEmpresa = Environment.CurrentDirectory + @"\images\logo.png"; if (File.Exists(logoEmpresa)) { imgLogo = (Bitmap)Image.FromFile(logoEmpresa); FastReport.PictureObject ptLogo = report.FindObject("ptLogo") as FastReport.PictureObject; ptLogo.Image = imgLogo; } report.PrintSettings.ShowDialog = false; report.PrintSettings.Printer = impresoraDefault; report.Print(); } } catch (Exception) { throw; } }
private void btCharge_Click(object sender, EventArgs e) { try { if (dgWaterUser.Rows.Count == 0) { mes.Show("未找到预交水费的用户信息!"); return; } if (cmbChargeType.SelectedValue == null || cmbChargeType.SelectedValue == DBNull.Value) { mes.Show("收费方式不能为空!"); cmbChargeType.Focus(); return; } if (!Information.IsNumeric(txtBCYC.Text)) { return; } else if (Convert.ToDecimal(txtBCYC.Text) <= 0) { mes.Show("预存金额不能为'0'"); txtBCYC.Focus(); return; } for (int i = 0; i < dgWaterUser.SelectedRows.Count; i++) { try { string strWaterUserID = "", strWaterUserNO = "", strWaterUserName = "", strWaterUserNameCode = "", strTelNO = "", strWaterUserPhone = "", strWaterUserAddress = "", strAreaNO = "", strPianNO = "", strDuanNO = "", strCommunityID = "", strCommunityName = "", strBuildingNO = "", strUnitNO = "", strMeterReaderID = "", strMeterReaderName = "", strMeterReaderTel = "", strChargeID = "", strChargerName = "", strWaterUserTypeID = "", strWaterUserTypeName = "", strWaterUserHouseType = "", strCreateType = "", strWaterMeterTypeID = "", strWaterMeterTypeName = "", strWaterMeterTypeClassID = "", strWaterMeterTypeClassName = ""; int intPepleCount = 1, intOrderNumber = 0; object objWaterUserID = dgWaterUser.SelectedRows[i].Cells["waterUserId"].Value; if (objWaterUserID == null || objWaterUserID == DBNull.Value) { mes.Show("第'" + (i + 1).ToString() + "行用户ID获取失败,批量收费终止!"); return; } //计算结算余额 decimal decQQYE = 0, decJSYE = 0; object objPrestore = dgWaterUser.SelectedRows[i].Cells["prestore"].Value; if (Information.IsNumeric(objPrestore)) { decQQYE = Convert.ToDecimal(objPrestore); } decJSYE = decQQYE + Convert.ToDecimal(txtBCYC.Text); #region 生成用户信息 strWaterUserID = objWaterUserID.ToString(); object objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserNO"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserNO = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserName"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserName = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserTelphoneNO"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strTelNO = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterPhone"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserPhone = objWaterUserMes.ToString(); } object objWaterUser = dgWaterUser.SelectedRows[i].Cells["areaNO"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strAreaNO = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["pianNO"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strPianNO = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["DuanNO"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strDuanNO = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["COMMUNITYID"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strCommunityID = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["COMMUNITYNAME"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strCommunityName = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["buildingNO"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strBuildingNO = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["unitNO"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strUnitNO = objWaterUser.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERUSERTYPEID"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserTypeID = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserTypeName"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserTypeName = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERMETERTYPEID"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterMeterTypeID = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERMETERTYPEVALUE"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterMeterTypeName = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERMETERTYPECLASSID"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterMeterTypeClassID = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERMETERTYPECLASSNAME"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterMeterTypeClassName = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserAddress"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserAddress = objWaterUserMes.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["createType"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strCreateType = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["METERREADERID"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strMeterReaderID = objWaterUser.ToString(); DataRow[] drMeterReader = dtMeterReader.Select("LOGINID='" + strMeterReaderID + "'"); object objMeterReaderTel = drMeterReader[0]["TELEPHONENO"]; if (objMeterReaderTel != null && objMeterReaderTel != DBNull.Value) { strMeterReaderTel = objMeterReaderTel.ToString(); } } objWaterUser = dgWaterUser.SelectedRows[i].Cells["meterReaderName"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strMeterReaderName = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["chargerName"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strChargerName = objWaterUser.ToString(); } objWaterUser = dgWaterUser.SelectedRows[i].Cells["CHARGERID"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strChargeID = objWaterUser.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["waterUserHouseTypeS"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserHouseType = objWaterUserMes.ToString(); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["ordernumber"].Value; if (Information.IsNumeric(objWaterUserMes)) { intOrderNumber = Convert.ToInt16(objWaterUserMes); } objWaterUserMes = dgWaterUser.SelectedRows[i].Cells["WATERUSERPEOPLECOUNT"].Value; if (Information.IsNumeric(objWaterUserMes)) { intPepleCount = Convert.ToInt16(objWaterUserMes); } #endregion MODELWATERFEECHARGE MODELWATERFEECHARGE = new MODELWATERFEECHARGE(); MODELWATERFEECHARGE.CHARGEID = GETTABLEID.GetTableID(strLoginID, "WATERFEECHARGE"); MODELWATERFEECHARGE.CHARGETYPEID = cmbChargeType.SelectedValue.ToString(); if (cmbChargeType.SelectedValue.ToString() == "2") { MODELWATERFEECHARGE.POSRUNNINGNO = txtJYLSH.Text; } MODELWATERFEECHARGE.CHARGEClASS = "2";//收费类型是水费预收 MODELWATERFEECHARGE.CHARGEBCSS = Convert.ToDecimal(txtBCYC.Text); MODELWATERFEECHARGE.CHARGEYSQQYE = decQQYE; MODELWATERFEECHARGE.CHARGEYSBCSZ = Convert.ToDecimal(txtBCYC.Text); MODELWATERFEECHARGE.CHARGEYSJSYE = decJSYE; MODELWATERFEECHARGE.CHARGEWORKERID = strLoginID; MODELWATERFEECHARGE.CHARGEWORKERNAME = strLoginName; MODELWATERFEECHARGE.CHARGEDATETIME = mes.GetDatetimeNow(); MODELWATERFEECHARGE.INVOICEPRINTSIGN = "0"; if (chkReceipt.Checked) { MODELWATERFEECHARGE.RECEIPTPRINTCOUNT = 1; MODELWATERFEECHARGE.RECEIPTNO = txtReceiptNO.Text; } if (BLLWATERFEECHARGE.Insert(MODELWATERFEECHARGE)) { try { MODELPRESTORERUNNINGACCOUNT MODELPRESTORERUNNINGACCOUNT = new MODELPRESTORERUNNINGACCOUNT(); MODELPRESTORERUNNINGACCOUNT.PRESTORERUNNINGACCOUNTID = GETTABLEID.GetTableID(strLoginID, "PRESTORERUNNINGACCOUNT"); MODELPRESTORERUNNINGACCOUNT.WATERUSERID = strWaterUserID; MODELPRESTORERUNNINGACCOUNT.WATERUSERNO = strWaterUserNO; MODELPRESTORERUNNINGACCOUNT.WATERUSERNAME = strWaterUserName; MODELPRESTORERUNNINGACCOUNT.WATERUSERNAMECODE = strWaterUserNameCode; MODELPRESTORERUNNINGACCOUNT.WATERUSERPHONE = strTelNO; if (strWaterUserPhone != "") { if (strTelNO != "") { MODELPRESTORERUNNINGACCOUNT.WATERUSERPHONE = strTelNO + ";" + strWaterUserPhone; } else { MODELPRESTORERUNNINGACCOUNT.WATERUSERPHONE = strWaterUserPhone; } } MODELPRESTORERUNNINGACCOUNT.WATERUSERADDRESS = strWaterUserAddress; MODELPRESTORERUNNINGACCOUNT.WATERUSERPEOPLECOUNT = intPepleCount; MODELPRESTORERUNNINGACCOUNT.AREANO = strAreaNO; MODELPRESTORERUNNINGACCOUNT.PIANNO = strPianNO; MODELPRESTORERUNNINGACCOUNT.DUANNO = strDuanNO; MODELPRESTORERUNNINGACCOUNT.COMMUNITYID = strCommunityID; MODELPRESTORERUNNINGACCOUNT.COMMUNITYNAME = strCommunityName; MODELPRESTORERUNNINGACCOUNT.ORDERNUMBER = intOrderNumber; MODELPRESTORERUNNINGACCOUNT.BUILDINGNO = strBuildingNO; MODELPRESTORERUNNINGACCOUNT.UNITNO = strUnitNO; MODELPRESTORERUNNINGACCOUNT.METERREADERID = strMeterReaderID; MODELPRESTORERUNNINGACCOUNT.METERREADERNAME = strMeterReaderName; MODELPRESTORERUNNINGACCOUNT.CHARGERID = strLoginID; MODELPRESTORERUNNINGACCOUNT.CHARGERNAME = strLoginName; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPEID = strWaterUserTypeID; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPENAME = strWaterUserTypeName; MODELPRESTORERUNNINGACCOUNT.waterMeterTypeId = strWaterMeterTypeID; MODELPRESTORERUNNINGACCOUNT.waterMeterTypeValue = strWaterMeterTypeName; MODELPRESTORERUNNINGACCOUNT.WATERMETERTYPECLASSID = strWaterMeterTypeClassID; MODELPRESTORERUNNINGACCOUNT.WATERMETERTYPECLASSNAME = strWaterMeterTypeClassName; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPENAME = strWaterUserTypeName; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPENAME = strWaterUserTypeName; MODELPRESTORERUNNINGACCOUNT.WATERUSERHOUSETYPE = strWaterUserHouseType; MODELPRESTORERUNNINGACCOUNT.CREATETYPE = strCreateType; MODELPRESTORERUNNINGACCOUNT.MEMO = txtMemo.Text; MODELPRESTORERUNNINGACCOUNT.CHARGEID = MODELWATERFEECHARGE.CHARGEID; if (BLLPRESTORERUNNINGACCOUNT.Insert(MODELPRESTORERUNNINGACCOUNT)) { //txtYSQQYE.Text = txtJSYE.Text; //txtWaterFeeReal.Text =( Convert.ToDecimal(txtWaterFee.Text) - Convert.ToDecimal(txtYSQQYE.Text)).ToString(); //txtBCYC.Text = "0"; //更新余额 string strUpdatePrestore = "UPDATE waterUser SET prestore=" + MODELWATERFEECHARGE.CHARGEYSJSYE + " WHERE waterUserId='" + strWaterUserID + "'"; if (!BLLwaterUser.UpdateSQL(strUpdatePrestore)) { string strError = "更新用户编号为'" + strWaterUserNO + "'的余额失败,请重新收费!"; mes.Show(strError); log.Write(strError, MsgType.Error); //回滚预存流水表 BLLPRESTORERUNNINGACCOUNT.Delete(MODELPRESTORERUNNINGACCOUNT.PRESTORERUNNINGACCOUNTID); //回滚收费记录表 BLLWATERFEECHARGE.Delete(MODELWATERFEECHARGE.CHARGEID); } else { decimal decUserArearage = 0, decWaterUserPrestore = 0; object objUserArearage = dgWaterUser.SelectedRows[i].Cells["USERAREARAGE"].Value; if (Information.IsNumeric(objUserArearage)) { decUserArearage = Convert.ToDecimal(objUserArearage); } object objUserPrestore = dgWaterUser.SelectedRows[i].Cells["prestore"].Value; if (Information.IsNumeric(objUserPrestore)) { decWaterUserPrestore = Convert.ToDecimal(objUserPrestore); } decWaterUserPrestore = decWaterUserPrestore + MODELWATERFEECHARGE.CHARGEBCSS; decUserArearage = decUserArearage + MODELWATERFEECHARGE.CHARGEBCSS; dgWaterUser.SelectedRows[i].Cells["USERAREARAGE"].Value = decUserArearage.ToString("F2"); dgWaterUser.SelectedRows[i].Cells["prestore"].Value = decWaterUserPrestore.ToString("F2"); } //如果勾选了打收据,打印收据 if (chkReceipt.Checked) { //--打印收据 #region FastReport.Report report1 = new FastReport.Report(); try { DataTable dtLastRecord = BLLwaterUser.QuerySQL("SELECT TOP 1 readMeterRecordId,readMeterRecordYearAndMonth,waterMeterLastNumber," + "(CASE chargeState WHEN 0 THEN waterMeterLastNumber " + "ELSE waterMeterEndNumber END) AS waterMeterEndNumber " + "FROM readMeterRecord " + "WHERE WATERUSERID='" + strWaterUserID + "' ORDER BY readMeterRecordYearAndMonth DESC,readMeterRecordDate DESC"); DataTable dtTemp = dtLastRecord.Clone(); dtTemp.Columns["readMeterRecordYearAndMonth"].DataType = typeof(string); if (dtLastRecord.Rows.Count > 0) { dtTemp.ImportRow(dtLastRecord.Rows[0]); object objReadMeterRecordYearAndMonth = dtTemp.Rows[0]["readMeterRecordYearAndMonth"]; if (Information.IsDate(objReadMeterRecordYearAndMonth)) { dtTemp.Rows[0]["readMeterRecordYearAndMonth"] = Convert.ToDateTime(objReadMeterRecordYearAndMonth).ToString("yyyy-MM"); } } //DataTable dtTemp = dtLastRecord.Copy(); DataSet ds = new DataSet(); dtTemp.TableName = "营业坐收收据模板"; ds.Tables.Add(dtTemp); // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\预存收费收据模板.frx"); (report1.FindObject("txtDateTime") as FastReport.TextObject).Text = MODELWATERFEECHARGE.CHARGEDATETIME.ToString("yyyy-MM-dd HH:mm:ss"); //if (cmbChargeType.SelectedValue.ToString() == "2") //{ // (report1.FindObject("Cell45") as FastReport.Table.TableCell).Text = txtWaterUserNO.Text + " 交易流水号:" + txtJYLSH.Text; //} //else (report1.FindObject("CellWaterUserNO") as FastReport.Table.TableCell).Text = strWaterUserNO; (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = strWaterUserName; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = strWaterUserAddress; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额: " + MODELWATERFEECHARGE.CHARGEYSQQYE.ToString("F2"); string strBCSS = MODELWATERFEECHARGE.CHARGEBCSS.ToString("F2"); (report1.FindObject("txtBCJF") as FastReport.TextObject).Text = "本次预存: " + strBCSS; (report1.FindObject("txtJSYE") as FastReport.TextObject).Text = "结算余额: " + MODELWATERFEECHARGE.CHARGEYSJSYE.ToString("F2"); //if (cmbChargeType.SelectedValue.ToString() == "2") //{ // (report1.FindObject("txtPOSRUNNINGNO") as FastReport.TextObject).Text = "交易流水号: " + MODELWATERFEECHARGE.POSRUNNINGNO; //} (report1.FindObject("txtChargeWorkerName") as FastReport.TextObject).Text = strLoginName; (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + txtReceiptNO.Text; (report1.FindObject("txtMeterReader") as FastReport.TextObject).Text = strMeterReaderName; (report1.FindObject("txtMeterReaderTel") as FastReport.TextObject).Text = strMeterReaderTel; string strCapMoney = RMBToCapMoney.CmycurD(strBCSS); if (cmbChargeType.SelectedValue.ToString() == "2") { (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney + Environment.NewLine + "交易流水号:" + txtJYLSH.Text; } else { (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; } // register the dataset report1.RegisterData(ds); report1.GetDataSource("营业坐收收据模板").Enabled = true; report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); //获取新的收据号码,8位收据号 if (Information.IsNumeric(txtReceiptNO.Text)) { txtReceiptNO.Text = (Convert.ToInt64(txtReceiptNO.Text) + 1).ToString().PadLeft(8, '0'); } } catch (Exception exx) { MessageBox.Show(exx.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } finally { // free resources used by report report1.Dispose(); } #endregion } } } catch (Exception exx) { mes.Show("插入预收流水表失败!原因:" + exx.Message); log.Write(exx.ToString(), MsgType.Error); return; } } } catch (Exception ex) { mes.Show("预收失败!原因:" + ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } } btCharge.Enabled = false; //dgWaterList.DataSource = null; } catch (Exception ex) { mes.Show(ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } }
private void toolPrint_Click(object sender, EventArgs e) { if (dtList.Rows.Count == 0) { toolPrint.Enabled = false; toolPrintPreview.Enabled = false; return; } DataSet ds = new DataSet(); DataTable dtRecordTemp = dtList.Clone(); dtRecordTemp.Columns["收费月份"].DataType = typeof(string); foreach (DataRow dr in dtList.Rows) { dtRecordTemp.ImportRow(dr); } for (int i = 0; i < dtRecordTemp.Rows.Count; i++) { object obj = dtRecordTemp.Rows[i]["收费月份"]; if (Information.IsDate(obj)) { dtRecordTemp.Rows[i]["收费月份"] = Convert.ToDateTime(obj).ToString("yyyy-MM"); } //object objWaterMeterNO = dtRecord.Rows[i]["waterMeterNo"]; //if (objWaterMeterNO != null && objWaterMeterNO != DBNull.Value) // if (objWaterMeterNO.ToString().Length > 7) // dtRecord.Rows[i]["waterMeterNo"] = objWaterMeterNO.ToString().Substring(6, 2); } dtRecordTemp.ImportRow(dtSum.Rows[0]); DataTable dtPrint = dtRecordTemp.Copy(); dtPrint.TableName = "一户式查询模板"; string strWaterUserID = "", strWaterUserName = "", strAddress = ""; object objWaterUser = dtList.Rows[0]["用户编号"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strWaterUserID = objWaterUser.ToString(); } objWaterUser = dtList.Rows[0]["用户名称"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strWaterUserName = objWaterUser.ToString(); } objWaterUser = dtList.Rows[0]["地址"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strAddress = objWaterUser.ToString(); } ds.Tables.Add(dtPrint); FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\一户式查询模板.frx"); (report1.FindObject("txtWaterUser") as FastReport.TextObject).Text = "用户编号:" + strWaterUserID + " 用户名称:" + strWaterUserName; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + strAddress; // register the dataset report1.RegisterData(ds); report1.GetDataSource("一户式查询模板").Enabled = true; // run the report report1.Prepare(); report1.PrintSettings.ShowDialog = false; report1.Print(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // free resources used by report report1.Dispose(); } }
private void toolPrint_Click(object sender, EventArgs e) { #region FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\日结明细单模板.frx"); (report1.FindObject("txtYSCOUNT") as FastReport.TextObject).Text = "发票数量:" + intYSCount + "张,收据数量:" + intYSRECEIPRNOCOUNT.ToString() + "张"; (report1.FindObject("txtYSSF") as FastReport.TextObject).Text = "应收水费:" + decBCYS.ToString("F2") + "元"; (report1.FindObject("txtSSSF") as FastReport.TextObject).Text = "实收金额:" + decYSBCSS.ToString("F2") + "元"; (report1.FindObject("txtSSSFXJ") as FastReport.TextObject).Text = "现金:" + decYSBCSSXJ.ToString("F2") + "元"; (report1.FindObject("txtSSSFPOS") as FastReport.TextObject).Text = "POS机:" + decYSBCSSPOS.ToString("F2") + "元"; (report1.FindObject("txtSSSFZHUANZHANG") as FastReport.TextObject).Text = "转账汇款:" + decYSBCSSZHUANZHANG.ToString("F2") + "元"; (report1.FindObject("txtYEZJ") as FastReport.TextObject).Text = "余额增减:" + decYSBCSZ.ToString("F2") + "元"; (report1.FindObject("txtYCCount") as FastReport.TextObject).Text = "单据数量:" + intYCCount + "张"; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额:" + decYCQQYE.ToString("F2") + "元"; (report1.FindObject("txtYCSF") as FastReport.TextObject).Text = "预存收费:" + decYCBCSZ.ToString("F2") + "元"; (report1.FindObject("txtYCSFXJ") as FastReport.TextObject).Text = "现金:" + decYCBCSZXJ.ToString("F2") + "元"; (report1.FindObject("txtYCSFPOS") as FastReport.TextObject).Text = "POS机:" + decYCBCSZPOS.ToString("F2") + "元"; (report1.FindObject("txtYCSFZHUANZHANG") as FastReport.TextObject).Text = "转账汇款:" + decYCBCSZZHUANZHANG.ToString("F2") + "元"; (report1.FindObject("txtJSYE") as FastReport.TextObject).Text = "结算余额::" + decYCJSYE.ToString("F2") + "元"; (report1.FindObject("txtJEZJ") as FastReport.TextObject).Text = "金额总计: " + labBCSS.Text; (report1.FindObject("txtDateTime") as FastReport.TextObject).Text = "统计时间:" + dtpStartSearch.Value.ToString("yyyy-MM-dd HH:mm:ss") + " 至 " + dtpEndSearch.Value.ToString("yyyy-MM-dd HH:mm:ss"); (report1.FindObject("txtWorkerName") as FastReport.TextObject).Text = "收 费 员:" + txtWorkerNameSearch.Text; report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception exx) { MessageBox.Show(exx.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // free resources used by report report1.Dispose(); } #endregion }
/// <summary> /// 导出 /// </summary> private void btnExport_Click(object sender, EventArgs e) { if (string.IsNullOrEmpty(txtCompanyCode.Text)) { MessageBox.Show("请选择公司。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } if (string.IsNullOrEmpty(txtFilePath.Text)) { MessageBox.Show("请选择保存路径。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } BaseCompanyTable companyTable = bCompany.GetModel(txtCompanyCode.Text.Trim()); BllOrderHeaderTable orderTable = bOrderH.GetModel(_slipNumber); BaseCustomerTable customerTable = bCustomer.GetModel(orderTable.ENDER_CUSTOMER_CODE); report.Preview = previewControl1; DataTable dt = new DataTable(); dt.TableName = "ds"; dt.Columns.Add("i", System.Type.GetType("System.Decimal")); dt.Columns.Add("SPEC", System.Type.GetType("System.String")); dt.Columns.Add("QUANTITY", System.Type.GetType("System.Decimal")); dt.Columns.Add("PRICE", System.Type.GetType("System.Decimal")); dt.Columns.Add("DISCOUNT", System.Type.GetType("System.Decimal")); dt.Columns.Add("AMOUNT", System.Type.GetType("System.Decimal")); dt.Columns.Add("MATERIAL", System.Type.GetType("System.String")); dt.Columns.Add("MEMO", System.Type.GetType("System.String")); dt.Columns.Add("DESCRIPTION", System.Type.GetType("System.String")); dt.Columns.Add("DESCRIPTION1", System.Type.GetType("System.String")); int j = 1; foreach (BllOrderLineTable lineModel in orderTable.Items) { if (lineModel.PRICE_DISCOUNT.ToString().Equals("0.00")) { object[] rows = { j++, lineModel.SPEC, lineModel.QUANTITY, lineModel.PRICE, null, lineModel.AMOUNT, lineModel.METERIAL, lineModel.MEMO, lineModel.DESCRIPTION, lineModel.DESCRIPTION1 }; dt.Rows.Add(rows); } else { object[] rows = { j++, lineModel.SPEC, lineModel.QUANTITY, lineModel.PRICE, 0 - lineModel.PRICE_DISCOUNT, lineModel.AMOUNT, lineModel.METERIAL, lineModel.MEMO, lineModel.DESCRIPTION, lineModel.DESCRIPTION1 }; dt.Rows.Add(rows); } } DataSet ds = new DataSet(); ds.Tables.Add(dt); string fileName = ""; string amountName = ""; if (CConstant.LANGUAGE_CN.Equals(cboLanguage.SelectedValue)) { fileName = @"Reports\Proforma_Invoice.frx"; amountName = NumberConvert.NumberToEnglish(CConvert.ToString(orderTable.AMOUNT_INCLUDED_TAX), false); } else if (CConstant.LANGUAGE_EN.Equals(cboLanguage.SelectedValue)) { fileName = @"Reports\Order_EN.frx"; amountName = NumberConvert.NumberToEnglish(CConvert.ToString(orderTable.AMOUNT_INCLUDED_TAX), false); } try { if (File.Exists(fileName)) { report.Load(fileName); report.SetParameterValue("CompanyName", companyTable.NAME); report.SetParameterValue("EnglishCompanyName", companyTable.NAME_ENGLISH); report.SetParameterValue("CompanyTel", companyTable.PHONE_NUMBER); report.SetParameterValue("CompanyFax", companyTable.FAX_NUMBER); report.SetParameterValue("CompanyAddress", companyTable.ADDRESS_MIDDLE); report.SetParameterValue("CompanyUrl", companyTable.URL); report.SetParameterValue("CompanyEmail", companyTable.EMAIL); report.SetParameterValue("SlipNumber", _slipNumber); report.SetParameterValue("SlipDate", CConvert.ToDateTime(orderTable.SLIP_DATE).ToString("yyyy/MM/dd")); report.SetParameterValue("Currency", orderTable.CURRENCY_NAME); report.SetParameterValue("CustomerName", customerTable.NAME); int COUNT = 0; foreach (DataRow dr in ds.Tables[0].Rows) { if (dr["DISCOUNT"].ToString() != "") { COUNT++; } } if (COUNT > 0) { report.SetParameterValue("DISCOUNT", "Discount"); } if (customerTable.PHONE_NUMBER.ToString() != "") { report.SetParameterValue("CustomerTel", "Tel:" + customerTable.PHONE_NUMBER); } if (customerTable.FAX_NUMBER.ToString() != "") { report.SetParameterValue("CustomerFax", "Fax:" + customerTable.FAX_NUMBER); } if (customerTable.ADDRESS_FIRST.ToString() != "") { report.SetParameterValue("CustomerAddress", "Address:" + customerTable.ADDRESS_FIRST); } report.SetParameterValue("CustomerMessage", txtMessage.Text); report.SetParameterValue("DeliveryTerms", orderTable.DELIVERY_TERMS); report.SetParameterValue("PaymentTerms", orderTable.PAYMENT_TERMS); if (orderTable.DISCOUNT_RATE > 0) { report.SetParameterValue("DiscountRate", "-" + orderTable.DISCOUNT_RATE + "%"); report.SetParameterValue("DiscountAmount", orderTable.AMOUNT_INCLUDED_TAX); } report.SetParameterValue("AmountName", amountName); report.SetParameterValue("FullNameEn", txtBankEn.Text); report.SetParameterValue("DetailEn", rtxtDetail.Text); if (companyTable.COMPANY_PICTURE != null) { MemoryStream ms = new MemoryStream((byte[])companyTable.COMPANY_PICTURE); Image image = Image.FromStream(ms); ((FastReport.PictureObject)report.FindObject("CompanyPicture")).Image = image; } if (companyTable.LOGO != null) { MemoryStream ms1 = new MemoryStream((byte[])companyTable.LOGO); Image image1 = Image.FromStream(ms1); ((FastReport.PictureObject)report.FindObject("Logo")).Image = image1; } report.RegisterData(ds); report.Prepare(); if (fileName.Equals(@"Reports\Proforma_Invoice.frx")) { report.Export(new FastReport.Export.Pdf.PDFExport(), this.txtFilePath.Text + "\\Proforma_Invoice" + _slipNumber + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".pdf"); } else { report.Export(new FastReport.Export.Pdf.PDFExport(), this.txtFilePath.Text + "\\Order_" + _slipNumber + "_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".pdf"); } MessageBox.Show("导出成功。", this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information); this.Close(); } } catch (Exception ex) { Logger.Error("", ex); } }
public override void ImprimirEnOtroFormato() { string nombreArchivo = ""; string logoEmpresa = ""; Bitmap imgLogo; FastReport.Base frBase; int tipoNCF = 0; int diasCredito = 0; double montoACredito = 0; try { nombreArchivo = Environment.CurrentDirectory + @"\Reportes\factura.frx"; tipoNCF = objUtil.GetAsInt("Tipo_NCF", DTVistaData.Rows[0]); diasCredito = objUtil.GetAsInt("Dias_Credito", DTVistaData.Rows[0]); montoACredito = objUtil.GetAsDouble("Monto_ACredito", DTVistaData.Rows[0]); using (FastReport.Report report = new FastReport.Report()) { report.Load(nombreArchivo); report.RegisterData(DTVistaData, "VVENTAS_DETALLE"); report.RegisterData(DTOficina, "VEMPRESAS_OFICINAS"); //Vamos a asignar el logo logoEmpresa = Environment.CurrentDirectory + @"\images\logo.png"; if (File.Exists(logoEmpresa)) { imgLogo = (Bitmap)Image.FromFile(logoEmpresa); FastReport.PictureObject ptLogo = report.FindObject("ptLogo") as FastReport.PictureObject; ptLogo.Image = imgLogo; } if (tipoNCF <= 0) { frBase = report.FindObject("txtNCF"); if (frBase != null) { FastReport.TextObject txt = (frBase as FastReport.TextObject); txt.Visible = false; } } if ((diasCredito <= 0) || (montoACredito <= 0)) { frBase = report.FindObject("txtFechaVence"); if (frBase != null) { FastReport.TextObject txt = (frBase as FastReport.TextObject); txt.Visible = false; } } report.PrintSettings.PrintMode = FastReport.PrintMode.Default; report.Print(); } } catch (Exception) { throw; } }
private void Btn_Print_Click(object sender, EventArgs e) { if (!CheckBCSS()) { return; } hc["CHARGEClASS"] = 15; if (ReceiptPrintSign.Checked) { if (!Information.IsNumeric(RECEIPTNO.Text)) { MessageBox.Show("收据号只能由数字组成,请输入正确的收据号!"); RECEIPTNO.Focus(); return; } } if (!CHARGETYPEID.Text.Equals("现金")) { if (POSRUNNINGNO.Text.Trim() == "") { MessageBox.Show("请输入交易流水号!"); POSRUNNINGNO.Focus(); return; } } string strCapMoney = RMBHelper.CmycurD(_BCSS); RECEIPTNO.Text = RECEIPTNO.Text.PadLeft(8, '0'); if (Approve_Finance()) { if (ReceiptPrintSign.Checked) { try { FastReport.Report report1 = new FastReport.Report(); // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\业扩模板\业扩决算收据模板.frx"); (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPEID.Text.Equals("现金")) { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + strRealName; if (_BCSS < 0) { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次退款:" + _BCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次实收:" + _BCSS.ToString("F2") + "元"; } (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPEID.Text.Equals("现金")) { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + strRealName; if (_BCSS < 0) { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次退款:" + _BCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次实收:" + _BCSS.ToString("F2") + "元"; } //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception ex) { MessageBox.Show("收据打印失败:" + ex.Message); } if (Information.IsNumeric(RECEIPTNO.Text)) { RECEIPTNO.Text = (Convert.ToInt32(RECEIPTNO.Text) + 1).ToString().PadLeft(8, '0'); } else { RECEIPTNO.Text = "00000001"; } } else { return; } MessageBox.Show("收费成功!"); TOTALCHARGE.Text = "0"; CHARGEBCYS.Text = "0"; CHARGEBCSS.Text = "0"; BindDepartmentFee(); Btn_Print.Visible = false; Btn_Settle.Visible = false; } else { MessageBox.Show("结算失败!"); } }
private void Btn_Submit_Click(object sender, EventArgs e) { string Matter = string.Format("【退款审批】-用户号:{0};用户名:{1};退款金额:{2};退款原因:{3}", WATERUSERNO.Text, ApplyUser.Text, CHARGEBCSS_IN.Text, RefundDescribe.Text); Btn_Submit.Enabled = false; int count = sysidal.UpdateApprove_Refund_defalut(ResolveID, IsPass.Checked, UserOpinion.Text.Trim(), PointSort, TaskID, Matter); if (count > 0) { if (sysidal.IsWorkTaskOver("User_Refund", TaskID))//获取审批状态,如果是Meter_WorkTask.state=5 和User_Refund.state=5,说明审批流程走完 { bool IsUserRefund = false; //====================================================================================================== #region 20160909 ByRen //修改PersonalWork_DAL类函数GetUserAllowRefund,增加预存单号ID、地址、账户余额字段,修改查询条件VV.CHARGEBCSS<=VW.prestore //using BASEFUNCTION;//引用基本函数类,获取收费ID //增加收费员ID和收费员姓名 //private string strLoginID = ""; //private string strUserName = ""; //在窗体加载时判断能否获取到收费员ID和姓名 //在类SqlServerHelper内添加自定义执行函数ExcuteSql //新建@"\PRINTModel\收据模板\审批_退费模板.frx"打印模板 //-----增加了打印收据,应增加加打印收据勾选框及收据号 //引用fastreport类 //添加了退款单号的更新 string strWaterUserID = "", strWaterUserName = "", strWaterUserAddress = "", strChargeIDOld = "", strPrestoreRunningAccountIDOld = "", strChargeIDNew = "", strPrestoreRunningAccountIDNew = ""; decimal decPrestore = 0, decRefund = 0; DateTime dtNow = new DateTime(); Messages mes = new Messages(); dtNow = mes.GetDatetimeNow(); Hashtable ht = sysidal.GetUserAllowRefund(CHARGEID_IN.Text); object objWaterUser = ht["WATERUSERNO"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strWaterUserID = objWaterUser.ToString(); objWaterUser = ht["APPLYUSER"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strWaterUserName = objWaterUser.ToString(); } objWaterUser = ht["WATERUSERADDRESS"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strWaterUserAddress = objWaterUser.ToString(); } objWaterUser = ht["CHARGEID"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strChargeIDOld = objWaterUser.ToString(); } objWaterUser = ht["PRESTORERUNNINGACCOUNTID"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { strPrestoreRunningAccountIDOld = objWaterUser.ToString(); } try { objWaterUser = ht["PRESTORE"]; if (objWaterUser != null && objWaterUser != DBNull.Value) { decPrestore = Convert.ToDecimal(objWaterUser); } } catch (Exception ex) { } try { decRefund = Convert.ToDecimal(CHARGEBCSS_IN.Text); } catch (Exception ex) { } GETTABLEID GETTABLEID = new GETTABLEID(); strChargeIDNew = GETTABLEID.GetTableID(strLoginID, "WATERFEECHARGE"); strPrestoreRunningAccountIDNew = GETTABLEID.GetTableID(strLoginID, "PRESTORERUNNINGACCOUNT"); string strSQL = string.Format(@" BEGIN TRAN BEGIN INSERT INTO PRESTORERUNNINGACCOUNT(PRESTORERUNNINGACCOUNTID,CHARGEID,WATERUSERID,WATERUSERNO,WATERUSERNAME,WATERUSERNAMECODE,WATERUSERPHONE,WATERUSERADDRESS,WATERUSERPEOPLECOUNT,AREANO,PIANNO,DUANNO, ORDERNUMBER,COMMUNITYID,COMMUNITYNAME,BUILDINGNO,UNITNO,METERREADERID,METERREADERNAME,CHARGERID,CHARGERNAME,WATERUSERTYPEID,WATERUSERTYPENAME,WATERMETERTYPEID, WATERMETERTYPEVALUE,WATERMETERTYPECLASSID,WATERMETERTYPECLASSNAME,WATERUSERHOUSETYPE,CREATETYPE) SELECT '{0}','{1}',WATERUSERID,WATERUSERNO,WATERUSERNAME,WATERUSERNAMECODE,WATERUSERPHONE,WATERUSERADDRESS,WATERUSERPEOPLECOUNT,AREANO,PIANNO,DUANNO, ORDERNUMBER,COMMUNITYID,COMMUNITYNAME,BUILDINGNO,UNITNO,METERREADERID,METERREADERNAME,CHARGERID,CHARGERNAME,WATERUSERTYPEID,WATERUSERTYPENAME,WATERMETERTYPEID, WATERMETERTYPEVALUE,WATERMETERTYPECLASSID,WATERMETERTYPECLASSNAME,WATERUSERHOUSETYPE,CREATETYPE FROM PRESTORERUNNINGACCOUNT WHERE PRESTORERUNNINGACCOUNTID='{2}'", strPrestoreRunningAccountIDNew, strChargeIDNew, strPrestoreRunningAccountIDOld); strSQL += string.Format(@" INSERT INTO WATERFEECHARGE(CHARGEID,CHARGETYPEID,CHARGEClASS,CHARGEBCSS,CHARGEYSQQYE,CHARGEYSBCSZ,CHARGEYSJSYE,CHARGEWORKERID,CHARGEWORKERNAME,CHARGEDATETIME,RECEIPTNO) SELECT '{0}','1','6',-{1},{2},-{3},{4},'{5}','{6}',GETDATE(),RECEIPTNO FROM WATERFEECHARGE WHERE CHARGEID='{7}'", strChargeIDNew, decRefund, decPrestore, decRefund, decPrestore - decRefund, strLoginID, strUserName, strChargeIDOld); strSQL += string.Format(@" UPDATE WATERUSER SET PRESTORE={0} WHERE WATERUSERID='{1}'", decPrestore - decRefund, strWaterUserID); strSQL += @"END IF(@@ERROR>0) BEGIN ROLLBACK TRAN RETURN END COMMIT TRAN "; int intRows = 0; try { intRows = new SqlServerHelper().ExcuteSql(strSQL); } catch (Exception ex) { mes.Show("执行退款语句失败,原因:" + ex.Message); return; } if (intRows > 0) { IsUserRefund = true; //打印收据 FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\审批_退费模板.frx"); (report1.FindObject("CellWaterUserNO") as FastReport.Table.TableCell).Text = strWaterUserID; (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = strWaterUserName; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = strWaterUserAddress; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额: " + decPrestore.ToString("F2"); (report1.FindObject("txtBCJF") as FastReport.TextObject).Text = "本次退费: " + (0 - decRefund).ToString(); (report1.FindObject("txtJSYE") as FastReport.TextObject).Text = "结算余额: " + (decPrestore - decRefund).ToString("F2"); (report1.FindObject("txtChargeWorkerName") as FastReport.TextObject).Text = strUserName; (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO."; (report1.FindObject("txtMeterReader") as FastReport.TextObject).Text = "抄表员"; report1.Prepare(); report1.PrintSettings.ShowDialog = false; report1.Print(); } catch (Exception ex) { mes.Show("打印收据错误,原因:" + ex.Message); } finally { // free resources used by report report1.Dispose(); } } } else { MessageBox.Show("账户余额不足或收款单号不存在,无法退款!"); return; } #endregion if (IsUserRefund) { Hashtable hu = new Hashtable(); //退款时间:CHARGEID_OutTime //退款金额: CHARGEBCSS_Out //退款人ID:CHARGEWORKERID //退款人:CHARGEWORKERNAME //退款状态:IsRefund;0-未退款,1-已退款 hu["IsRefund"] = 1; hu["CHARGEWORKERNAME"] = AppDomain.CurrentDomain.GetData("USERNAME").ToString(); hu["CHARGEWORKERID"] = AppDomain.CurrentDomain.GetData("LOGINID").ToString(); hu["CHARGEID_OutTime"] = DateTime.Now.ToString(); hu["CHARGEBCSS_Out"] = 0;//===================================================== //添加退款单号 ByRen hu["CHARGEID_Out"] = strChargeIDNew; int upCount = new SqlServerHelper().UpdateByHashtable("User_Refund", "TaskID", TaskID, hu); if (upCount > 0) { this.DialogResult = DialogResult.OK; MessageBox.Show("退款成功!"); this.Close(); } else { MessageBox.Show("退款成功 ,记录保存失败!"); } } else { MessageBox.Show("退款失败!"); } } else { this.DialogResult = DialogResult.OK; MessageBox.Show("审批成功!"); this.Close(); } } else { Btn_Submit.Enabled = true; } }
private void btReceiptPrint_Click(object sender, EventArgs e) { //获取连打起始号及终止号 int intStartRow = 0, intEndRow = dgList.Rows.Count - 1; if (!Information.IsNumeric(txtStartRow.Text)) { mes.Show("请输入连打起始行号!"); txtStartRow.Focus(); return; } else { if (Convert.ToInt32(txtStartRow.Text) < 1) { mes.Show("连打起始行号不能小于1!"); txtStartRow.Focus(); return; } intStartRow = Convert.ToInt32(txtStartRow.Text); } if (Information.IsNumeric(txtEndRow.Text)) { if (Convert.ToInt32(txtStartRow.Text) > Convert.ToInt32(txtEndRow.Text)) { mes.Show("连打起始行号不能大于终止行号!"); txtEndRow.Focus(); return; } if (Convert.ToInt32(txtEndRow.Text) < dgList.Rows.Count) { intEndRow = Convert.ToInt32(txtEndRow.Text); } } if (mes.ShowQ("确定要打印第 " + intStartRow.ToString() + " 至第 " + intEndRow.ToString() + " 行的通知单信息吗?") != DialogResult.OK) { return; } for (int i = intStartRow - 1; i < intEndRow; i++) { //获取抄表记录ID string strreadMeterRecordId = ""; //存储结算余额,如果结算余额大于0,打印模板则隐藏欠费提醒,否则显示欠费提醒。 decimal decJSJE = 0; string strWaterUserID = ""; object objWaterUserID = dtUserList.Rows[i]["waterUserId"]; if (objWaterUserID != null && objWaterUserID != DBNull.Value) { strWaterUserID = objWaterUserID.ToString(); } DataTable dtUserListTemp = dtUserList.Copy(); DataView dvWaterUserID = dtUserListTemp.DefaultView; dvWaterUserID.RowFilter = "waterUserId='" + strWaterUserID + "'"; DataTable dtWaterUserID = dvWaterUserID.ToTable(); int intCurrentPage = 0, intSumPageNO = dtWaterUserID.Rows.Count; if (i == intStartRow - 1 && intSumPageNO > 1) { //如果用户数量大约1,判断第一个readMeterRecordId的rowindex和当前选择的起始rowindex是否一致,不一致则不允许打印。否则会造成打印出问题 int intFirstStartRow = 0; string strStartRowID = "", strFirstStartRowID = ""; object objreadMeterRecordId = dtUserList.Rows[i]["readMeterRecordId"]; if (objreadMeterRecordId != null && objreadMeterRecordId != DBNull.Value) { strStartRowID = objreadMeterRecordId.ToString(); } for (int k = 0; k < dtUserList.Rows.Count; k++) { objreadMeterRecordId = dtUserList.Rows[k]["readMeterRecordId"]; if (objreadMeterRecordId != null && objreadMeterRecordId != DBNull.Value) { strFirstStartRowID = objreadMeterRecordId.ToString(); if (strStartRowID == strFirstStartRowID) { intFirstStartRow = k; break; } } } if (i > intFirstStartRow) { mes.Show("请从该用户第一页通知单开始打印!"); return; } } for (int j = 0; j < intSumPageNO; j++) { object objreadMeterRecordId = dtWaterUserID.Rows[j]["readMeterRecordId"]; if (objreadMeterRecordId != null && objreadMeterRecordId != DBNull.Value) { strreadMeterRecordId = objreadMeterRecordId.ToString(); object objJSJE = dtWaterUserID.Rows[j]["WATERUSERJSYE"]; if (Information.IsNumeric(objJSJE)) { decJSJE = Convert.ToDecimal(objJSJE); } } else { mes.Show("第'" + (i + j + 1).ToString() + "行抄表ID获取失败,无法执行打印操作!"); return; } try { //存储收费表,打印收据用 DataTable dtRecord = dtWaterUserID.Clone(); dtRecord.ImportRow(dtWaterUserID.Rows[j]); MODELreadMeterRecord MODELreadMeterRecord = new MODELreadMeterRecord(); MODELreadMeterRecord.INFORMNO = txtInvoiceNO.Text.PadLeft(8, '0'); MODELreadMeterRecord.PRINTWORKERID = strLogID; MODELreadMeterRecord.PRINTWORKERNAME = strUserName; MODELreadMeterRecord.readMeterRecordId = strreadMeterRecordId; if (BLLreadMeterRecord.UpdateInformNO(MODELreadMeterRecord)) { intCurrentPage = j + 1; //如果是最后一张单据显示用户余额,否则不显示余额 if (intCurrentPage < intSumPageNO) { dtRecord.Rows[0]["WATERUSERJSYE"] = DBNull.Value; } dtUserList.Rows[i + j]["INFORMNO"] = MODELreadMeterRecord.INFORMNO; //每张通知单添加页号,方便用户区分最终的用户余额 DataColumn dcPage = new DataColumn("PAGESUMMERY", typeof(string)); dtRecord.Columns.Add(dcPage); dtRecord.Rows[0]["PAGESUMMERY"] = "第" + intCurrentPage + "/" + intSumPageNO + "页"; #region DataSet ds = new DataSet(); dtRecord.TableName = "水费通知单模板"; ds.Tables.Add(dtRecord); FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\水费通知单模板.frx"); // register the dataset report1.RegisterData(ds); report1.GetDataSource("水费通知单模板").Enabled = true; if (decJSJE < 0) { (report1.FindObject("txtQFSM") as FastReport.TextObject).Visible = true; } //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); txtInvoiceNO.Text = (Convert.ToInt32(txtInvoiceNO.Text) + 1).ToString().PadLeft(8, '0'); } catch (Exception exx) { mes.Show(exx.Message); log.Write(exx.ToString(), MsgType.Error); return; } finally { // free resources used by report report1.Dispose(); } #endregion } } catch (Exception ex) { mes.Show("第" + (i + 1).ToString() + "行更新通知单号失败,原因:" + ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } } i = i + intSumPageNO - 1;//随着用户数量大约1的打印,计数器增加; } }
private void Btn_Print_Click(object sender, EventArgs e) { if (!Information.IsNumeric(TB_RECEIPTNO.Text)) { MessageBox.Show("收据号只能由数字组成,请输入正确的收据号!"); TB_RECEIPTNO.Focus(); return; } TB_RECEIPTNO.Text = TB_RECEIPTNO.Text.PadLeft(8, '0'); if (labIsFinal.Text == "预算收费") { #region 打印预算收据 if (dtFeeList.Rows.Count == 0) { mes.Show("预算费用明细表为空,请重新打开窗体!"); return; } //====================================打印 DataSet ds = new DataSet(); DataTable dtTemp = dtFeeList.Copy(); dtTemp.TableName = "收据模板"; ds.Tables.Add(dtTemp); FastReport.Report report1 = new FastReport.Report(); try { string strCapMoney = RMBToCapMoney.CmycurD(decSum_IsFinal0);//金额大写 // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\业扩模板\业扩预算收据模板.frx"); (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + TB_RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + CHARGEWORKERNAME.Text; (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + TB_RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + CHARGEWORKERNAME.Text; // register the dataset report1.RegisterData(ds); report1.GetDataSource("收据模板").Enabled = true; //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception ex) { mes.Show("收据打印失败:" + ex.Message); } //更新预算收据号 string strSQL = string.Format(@"UPDATE Meter_Charge SET RECEIPTPRINTCOUNT=1,ReceiptPrintSign='1',ReceiptPrintTime=GETDATE(), RECEIPTNO='{1}' WHERE CHARGEID IN (SELECT CHARGEID FROM View_TaskFee WHERE TaskID='{0}' AND IsFinal='1')", TaskID, TB_RECEIPTNO.Text); int count = new SqlServerHelper().ExcuteSql(strSQL); if (count == 0) { mes.Show("更新收据单号失败!"); } #endregion } else { #region 打印决算收据 try { decimal decBCSS = 0; if (Information.IsNumeric(CHARGEBCSS.Text)) { decBCSS = Convert.ToDecimal(CHARGEBCSS.Text); } string strCapMoney = RMBToCapMoney.CmycurD(decBCSS);//金额大写 FastReport.Report report1 = new FastReport.Report(); // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\业扩模板\业扩决算收据模板.frx"); (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + TB_RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPENAME.Text.Equals("现金")) { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + CHARGEWORKERNAME.Text; if (decBCSS < 0) { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次退款:" + decBCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次实收:" + decBCSS.ToString("F2") + "元"; } (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + TB_RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPENAME.Text.Equals("现金")) { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + CHARGEWORKERNAME.Text; if (decBCSS < 0) { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次退款:" + decBCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次实收:" + decBCSS.ToString("F2") + "元"; } //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception ex) { MessageBox.Show("收据打印失败:" + ex.Message); } #endregion //更新预算收据号 string strSQL = string.Format(@"UPDATE Meter_Charge SET RECEIPTPRINTCOUNT=1,ReceiptPrintSign='1',ReceiptPrintTime=GETDATE(), RECEIPTNO='{1}' WHERE CHARGEID='{0}'", _ChargeID, TB_RECEIPTNO.Text); int count = new SqlServerHelper().ExcuteSql(strSQL); if (count == 0) { mes.Show("更新收据单号失败!"); } } if (Information.IsNumeric(TB_RECEIPTNO.Text)) { TB_RECEIPTNO.Text = (Convert.ToInt32(TB_RECEIPTNO.Text) + 1).ToString().PadLeft(8, '0'); } else { TB_RECEIPTNO.Text = "00000001"; } }
private void bgWork_DoWork(object sender, DoWorkEventArgs e) { try { labProgress.Text = "进度:0/0"; int intAllCount = dtUserList.Rows.Count; prb.Minimum = 0; prb.Maximum = intAllCount; prb.Value = 0; //btCharge.Enabled = false; //获取连打起始号及终止号 int intStartRow = 0, intEndRow = dgWaterUser.Rows.Count; if (!Information.IsNumeric(txtStartRow.Text)) { mes.Show("请输入连打起始行号!"); txtStartRow.Focus(); return; } else { if (Convert.ToInt32(txtStartRow.Text) < 1) { mes.Show("连打起始行号不能小于1!"); txtStartRow.Focus(); return; } intStartRow = Convert.ToInt32(txtStartRow.Text); } if (Information.IsNumeric(txtEndRow.Text)) { if (Convert.ToInt32(txtStartRow.Text) > Convert.ToInt32(txtEndRow.Text)) { mes.Show("连打起始行号不能大于终止行号!"); txtEndRow.Focus(); return; } if (Convert.ToInt32(txtEndRow.Text) < dgWaterUser.Rows.Count) { intEndRow = Convert.ToInt32(txtEndRow.Text); } } //int intRowNumber=1; //if(Information.IsNumeric(txtStartRow.Text)) // intRowNumber=Convert.ToInt32(txtStartRow.Text); string strMaxInformNO = txtInformNO.Text.PadLeft(8, '0'); for (int i = intStartRow - 1; i < intEndRow; i++) { if (bgWork.CancellationPending) { e.Cancel = true; break; } string strWaterUserName = "", strWaterUserID = "", strWaterUserAddress = "", strMeterReader = "", strMeterReaderTel = ""; object objWaterUserID = dgWaterUser.Rows[i].Cells["waterUserId"].Value; if (objWaterUserID != null && objWaterUserID != DBNull.Value) { strWaterUserID = objWaterUserID.ToString(); object objWaterUserName = dgWaterUser.Rows[i].Cells["waterUserName"].Value; if (objWaterUserName != null && objWaterUserName != DBNull.Value) { strWaterUserName = objWaterUserName.ToString(); } object objWaterUserAddress = dgWaterUser.Rows[i].Cells["waterUserAddress"].Value; if (objWaterUserAddress != null && objWaterUserAddress != DBNull.Value) { strWaterUserAddress = objWaterUserAddress.ToString(); } object objMeterReader = dgWaterUser.Rows[i].Cells["meterReaderID"].Value; if (objMeterReader != null && objMeterReader != DBNull.Value) { DataRow[] dr = dtMeterReader.Select("loginId='" + objMeterReader.ToString() + "'"); if (dr.Length > 0) { objMeterReader = dr[0]["userName"]; if (objMeterReader != null && objMeterReader != DBNull.Value) { strMeterReader = objMeterReader.ToString(); } objMeterReader = dr[0]["telePhoneNO"]; if (objMeterReader != null && objMeterReader != DBNull.Value) { strMeterReaderTel = objMeterReader.ToString(); } } } //获取用户余额 decimal decWaterUserPrestore = 0, decToltalFee = 0, decArearage = 0; object objWaterUserPreStore = BLLwaterUser.GetPrestore(" AND WATERUSERID='" + strWaterUserID + "'"); if (Information.IsNumeric(objWaterUserPreStore)) { decWaterUserPrestore = Convert.ToDecimal(objWaterUserPreStore); } //获取用户水表欠费信息 string strFilter = " AND totalChargeEND>0 AND waterUserId='" + objWaterUserID.ToString() + "' AND chargeState=1 ORDER BY readMeterRecordYear,readMeterRecordMonth"; DataTable dtYSDetail = BLLreadMeterRecord.QueryYSDetailByWaterMeter(strFilter); object objSumArearage = dtYSDetail.Compute("SUM(totalCharge)", ""); if (Information.IsNumeric(objSumArearage)) { decToltalFee = Convert.ToDecimal(objSumArearage); } decArearage = decWaterUserPrestore - decToltalFee; DataTable dtReadMeterRecord = BLLreadMeterRecord.Query(" AND waterUserId='" + objWaterUserID.ToString() + "' AND DATEDIFF(MONTH,readMeterRecordYearAndMonth,'" + dtpMonthSearch.Value + "')=0"); decimal decJianXian = 0; if (Information.IsNumeric(labCondition.Text)) { decJianXian = Convert.ToDecimal(labCondition.Text); } #region 打印通知单 DataSet ds = new DataSet(); DataTable dtYSDetailTemp = dtReadMeterRecord.Copy(); dtYSDetailTemp.TableName = "水费通知单模板"; ds.Tables.Add(dtYSDetailTemp); FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\水费通知单模板.frx"); (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = strWaterUserName; (report1.FindObject("CellWaterUserNO") as FastReport.Table.TableCell).Text = strWaterUserID; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = strWaterUserAddress; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额:" + decWaterUserPrestore.ToString("F2") + " 水费合计:" + decToltalFee.ToString("F2"); (report1.FindObject("txtQFHJ") as FastReport.TextObject).Text = "用户余额: " + decArearage.ToString("F2"); (report1.FindObject("txtMeterReader") as FastReport.TextObject).Text = strMeterReader; (report1.FindObject("txtMeterReaderTel") as FastReport.TextObject).Text = strMeterReaderTel; if (decJianXian == 0) { if (decArearage < 0) { (report1.FindObject("txtTip") as FastReport.TextObject).Text = "您已欠费,请及时交纳水费"; } } else if (decArearage >= 0 && decArearage <= decJianXian) { (report1.FindObject("txtTip") as FastReport.TextObject).Text = "您的余额已不足,请您及时交费"; } else if (decArearage < 0) { (report1.FindObject("txtTip") as FastReport.TextObject).Text = "您已欠费,请您及时交纳水费"; } (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + strMaxInformNO; // register the dataset report1.RegisterData(ds); report1.GetDataSource("水费通知单模板").Enabled = true; //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); try { for (int j = 0; j < dtReadMeterRecord.Rows.Count; j++) { object objID = dtReadMeterRecord.Rows[j]["readMeterRecordId"]; if (objID != null && objID != DBNull.Value) { MODELreadMeterRecord MODELreadMeterRecord = new MODELreadMeterRecord(); MODELreadMeterRecord.WATERUSERQQYEINFORM = decWaterUserPrestore; MODELreadMeterRecord.WATERUSERJSYEINFORM = decArearage; MODELreadMeterRecord.INFORMNO = strMaxInformNO; MODELreadMeterRecord.INFORMPRINTSIGN = "1"; MODELreadMeterRecord.PRINTWORKERID = strLogID; MODELreadMeterRecord.PRINTWORKERNAME = strUserName; MODELreadMeterRecord.readMeterRecordId = objID.ToString(); if (!BLLreadMeterRecord.UpdateInformPrintSign(MODELreadMeterRecord)) { mes.Show("更新用户'" + strWaterUserID + "-" + strWaterUserName + "'的通知单失打印标志失败,请重打通知单!"); return; } } } } catch (Exception ex) { mes.Show("更新用户'" + strWaterUserID + "-" + strWaterUserName + "'的通知单失打印标志失败,原因:" + ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } strMaxInformNO = (Convert.ToInt32(strMaxInformNO) + 1).ToString().PadLeft(8, '0'); } catch (Exception exx) { mes.Show(exx.Message); log.Write(exx.ToString(), MsgType.Error); return; } finally { // free resources used by report report1.Dispose(); } #endregion } else { mes.Show("第" + (i + 1).ToString() + "行用户ID为空,无法获取金额,请查询后重试!"); return; } prb.Value = i + 1; labProgress.Text = "进度:" + (i + 1) + "/" + intAllCount; } txtInformNO.Text = strMaxInformNO; } catch (Exception ex) { mes.Show(ex.Message); log.Write(ex.ToString(), MsgType.Error); } }
private void btCharge_Click(object sender, EventArgs e) { try { if (dgList.Rows.Count == 0) { mes.Show("未找到预交水费的用户信息!"); return; } if (!Information.IsNumeric(txtBCYC.Text)) { return; } else if (Convert.ToDecimal(txtBCYC.Text) <= 0) { mes.Show("预存金额不能为'0'"); txtBCYC.Focus(); return; } if (chkReceipt.Checked) { if (txtReceiptNO.Text.Trim() == "") { mes.Show("收据号不能为空!"); return; } } txtReceiptNO.Text = txtReceiptNO.Text.Trim().PadLeft(8, '0'); //预存金额 decimal decYCMoney = Convert.ToDecimal(txtBCYC.Text); for (int i = 0; i < dgList.SelectedRows.Count; i++) { try { string strWaterUserID = "", strWaterUserNO = "", strWaterUserName = "", strWaterUserAddress = "", strMeterReaderID = "", strMeterReaderName = "", strMeterReaderTel = ""; object objWaterUserID = dgList.SelectedRows[i].Cells["waterUserId"].Value; if (objWaterUserID == null || objWaterUserID == DBNull.Value) { mes.Show("第'" + (i + 1).ToString() + "行用户ID获取失败,批量收费终止!"); return; } if ((decSumYuCun_YY + decYCMoney) > decSumYuCun_YK) { if (mes.ShowQ("检测到当前营业用户预存余额>业扩预存款,确定要继续吗?") != DialogResult.OK) { return; } } #region 生成用户信息 strWaterUserID = objWaterUserID.ToString(); object objWaterUserMes = dgList.SelectedRows[i].Cells["waterUserNO"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserNO = objWaterUserMes.ToString(); } objWaterUserMes = dgList.SelectedRows[i].Cells["waterUserName"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserName = objWaterUserMes.ToString(); } objWaterUserMes = dgList.SelectedRows[i].Cells["waterUserAddress"].Value; if (objWaterUserMes != null && objWaterUserMes != DBNull.Value) { strWaterUserAddress = objWaterUserMes.ToString(); } object objWaterUser = dgList.SelectedRows[i].Cells["METERREADERID"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strMeterReaderID = objWaterUser.ToString(); DataRow[] drMeterReader = dtMeterReader.Select("LOGINID='" + strMeterReaderID + "'"); object objMeterReaderTel = drMeterReader[0]["TELEPHONENO"]; if (objMeterReaderTel != null && objMeterReaderTel != DBNull.Value) { strMeterReaderTel = objMeterReaderTel.ToString(); } } objWaterUser = dgList.SelectedRows[i].Cells["meterReaderName"].Value; if (objWaterUser != null && objWaterUser != DBNull.Value) { strMeterReaderName = objWaterUser.ToString(); } #endregion //计算结算余额 decimal decQQYE = 0, decJSYE = 0; object objPrestore = dgList.SelectedRows[i].Cells["prestore"].Value; if (Information.IsNumeric(objPrestore)) { decQQYE = Convert.ToDecimal(objPrestore); } decJSYE = decQQYE + Convert.ToDecimal(txtBCYC.Text); string CHARGEID = GETTABLEID.GetTableID(strLoginID, "WATERFEECHARGE"); string PRESTORERUNNINGACCOUNTID = GETTABLEID.GetTableID(strLoginID, "PRESTORERUNNINGACCOUNT"); string _chargeID = sysidal.GetNewChargeID(strLoginID); string strSQL = string.Format(@"BEGIN TRAN DECLARE @prestore DECIMAL(18,0)=0 SELECT @prestore=prestore FROM Meter_Install_Group WHERE GROUPID='{0}' INSERT INTO Meter_Charge (CHARGEID,TaskID,CHARGEBCSS,CHARGEBCYS,TOTALCHARGE,prestore,FeeList, CHARGETYPEID,CHARGEClASS,CHARGEWORKERID,CHARGEWORKERNAME,CHARGEDATETIME,RECEIPTPRINTCOUNT,ReceiptPrintSign,RECEIPTNO,ReceiptPrintTime) VALUES('{1}','{2}',0-{3},0,0,@prestore-{3},'余额转营业','6','17','{4}','{5}',GETDATE(),1,'1','{7}',GETDATE()) UPDATE Meter_Install_Group SET prestore=@prestore-{3} WHERE GROUPID='{0}' SELECT @prestore=prestore FROM waterUser WHERE waterUserId='{6}' INSERT INTO WATERFEECHARGE (CHARGEID,CHARGETYPEID,CHARGEClASS,CHARGEBCYS,CHARGEBCSS,CHARGEYSQQYE,CHARGEYSBCSZ,CHARGEYSJSYE,CHARGEWORKERID, CHARGEWORKERNAME,CHARGEDATETIME,RECEIPTPRINTCOUNT,RECEIPTNO) VALUES('{9}','6','17',0,{3},@prestore,{3},@prestore+{3},'{4}','{5}',GETDATE(),'1','{7}') INSERT INTO PRESTORERUNNINGACCOUNT (PRESTORERUNNINGACCOUNTID,CHARGEID,WATERUSERID,WATERUSERNO,WATERUSERNAME,WATERUSERADDRESS,AREANO,PIANNO, DUANNO,ORDERNUMBER,COMMUNITYID,COMMUNITYNAME,METERREADERID,METERREADERNAME,CHARGERID,CHARGERNAME,WATERUSERTYPEID,WATERUSERTYPENAME, WATERMETERTYPEID,WATERMETERTYPEVALUE,WATERMETERTYPECLASSID,WATERMETERTYPECLASSNAME,WATERUSERHOUSETYPE,CREATETYPE,WATERUSERPHONE,BUILDINGNO,UNITNO) SELECT '{8}','{9}', WATERUSERID,WATERUSERNO,WATERUSERNAME,WATERUSERADDRESS,AREANO,PIANNO,DUANNO,ORDERNUMBER,COMMUNITYID,COMMUNITYNAME, METERREADERID,METERREADERNAME,CHARGERID,CHARGERNAME,WATERUSERTYPEID,WATERUSERTYPENAME,WATERMETERTYPEID,WATERMETERTYPEVALUE,WATERMETERTYPECLASSID, WATERMETERTYPECLASSNAME,WATERUSERHOUSETYPE,CREATETYPE,waterUserTelphoneNO,BUILDINGNO,UNITNO FROM V_WATERUSER_CONNECTWATERMETER WHERE waterUserId='{6}' UPDATE waterUser SET prestore=@prestore+{3} WHERE waterUserId='{6}' COMMIT TRAN", strGroupID, _chargeID, strTaskID, decYCMoney, strLoginID, strLoginName, strWaterUserID, txtReceiptNO.Text, PRESTORERUNNINGACCOUNTID, CHARGEID); int intRows = SqlServerHelper.ExcuteSql(strSQL); if (intRows > 0) { decSumYuCun_YY = decSumYuCun_YY + decYCMoney; labYuCunSum_YY.Text = decSumYuCun_YY.ToString() + "元"; decimal decUserArearage = 0, decWaterUserPrestore = 0; object objUserArearage = dgList.SelectedRows[i].Cells["USERAREARAGE"].Value; if (Information.IsNumeric(objUserArearage)) { decUserArearage = Convert.ToDecimal(objUserArearage); } object objUserPrestore = dgList.SelectedRows[i].Cells["prestore"].Value; if (Information.IsNumeric(objUserPrestore)) { decWaterUserPrestore = Convert.ToDecimal(objUserPrestore); } decWaterUserPrestore = decWaterUserPrestore + decYCMoney; decUserArearage = decUserArearage + decYCMoney; dgList.SelectedRows[i].Cells["USERAREARAGE"].Value = decUserArearage.ToString("F2"); dgList.SelectedRows[i].Cells["prestore"].Value = decWaterUserPrestore.ToString("F2"); //如果勾选了打收据,打印收据 if (chkReceipt.Checked) { //--打印收据 #region FastReport.Report report1 = new FastReport.Report(); try { DataTable dtLastRecord = BLLwaterUser.QuerySQL("SELECT TOP 1 readMeterRecordId,readMeterRecordYearAndMonth,waterMeterLastNumber," + "(CASE chargeState WHEN 0 THEN waterMeterLastNumber " + "ELSE waterMeterEndNumber END) AS waterMeterEndNumber " + "FROM readMeterRecord " + "WHERE WATERUSERID='" + strWaterUserID + "' ORDER BY readMeterRecordYearAndMonth DESC,readMeterRecordDate DESC"); DataTable dtTemp = dtLastRecord.Clone(); dtTemp.Columns["readMeterRecordYearAndMonth"].DataType = typeof(string); if (dtLastRecord.Rows.Count > 0) { dtTemp.ImportRow(dtLastRecord.Rows[0]); object objReadMeterRecordYearAndMonth = dtTemp.Rows[0]["readMeterRecordYearAndMonth"]; if (Information.IsDate(objReadMeterRecordYearAndMonth)) { dtTemp.Rows[0]["readMeterRecordYearAndMonth"] = Convert.ToDateTime(objReadMeterRecordYearAndMonth).ToString("yyyy-MM"); } } //DataTable dtTemp = dtLastRecord.Copy(); DataSet ds = new DataSet(); dtTemp.TableName = "营业坐收收据模板"; ds.Tables.Add(dtTemp); // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\预存收费收据模板.frx"); (report1.FindObject("txtDateTime") as FastReport.TextObject).Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); (report1.FindObject("CellWaterUserNO") as FastReport.Table.TableCell).Text = strWaterUserNO; (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = strWaterUserName; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = strWaterUserAddress; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额: " + decQQYE.ToString("F2"); string strBCSS = decYCMoney.ToString("F2"); (report1.FindObject("txtBCJF") as FastReport.TextObject).Text = "本次预存: " + strBCSS; (report1.FindObject("txtJSYE") as FastReport.TextObject).Text = "结算余额: " + decJSYE.ToString("F2"); (report1.FindObject("txtChargeWorkerName") as FastReport.TextObject).Text = strLoginName; (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + txtReceiptNO.Text; (report1.FindObject("txtMeterReader") as FastReport.TextObject).Text = strMeterReaderName; (report1.FindObject("txtMeterReaderTel") as FastReport.TextObject).Text = strMeterReaderTel; string strCapMoney = RMBToCapMoney.CmycurD(strBCSS); (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; // register the dataset report1.RegisterData(ds); report1.GetDataSource("营业坐收收据模板").Enabled = true; report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); //获取新的收据号码,8位收据号 if (Information.IsNumeric(txtReceiptNO.Text)) { txtReceiptNO.Text = (Convert.ToInt64(txtReceiptNO.Text) + 1).ToString().PadLeft(8, '0'); } } catch (Exception exx) { MessageBox.Show(exx.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } finally { // free resources used by report report1.Dispose(); } #endregion } } } catch (Exception ex) { mes.Show("预收失败!原因:" + ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } } btCharge.Enabled = false; } catch (Exception ex) { mes.Show(ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } }
private void Btn_Print_Click(object sender, EventArgs e) { if (RECEIPTNO.Text.Trim() == "") { mes.Show("请输入收据号!"); RECEIPTNO.Focus(); return; } if (!Information.IsNumeric(RECEIPTNO.Text)) { mes.Show("收据号只能由数字组成!"); RECEIPTNO.SelectAll(); return; } RECEIPTNO.Text = RECEIPTNO.Text.PadLeft(8, '0'); if (BLLWATERFEECHARGE.IsExistReceiptNO(RECEIPTNO.Text)) { if (mes.ShowQ("系统检测到号码为'" + RECEIPTNO.Text + "'的收据已使用,确定使用此号码吗?") != DialogResult.OK) { RECEIPTNO.SelectAll(); return; } } if (CHARGETYPEID.SelectedValue == null || CHARGETYPEID.SelectedValue == DBNull.Value) { mes.Show("收款方式不能为空!"); CHARGETYPEID.Focus(); return; } else { if (CHARGETYPEID.SelectedValue.ToString() == "2") { if (POSRUNNINGNO.Text.Trim() == "") { mes.Show("请输入POS机收费的交易流水号!"); POSRUNNINGNO.Focus(); return; } } } if (_BCSS > 0m) { if (Approve_Finance()) { //===================================ByRen201610170956===================================================打印收据 #region FastReport.Report report1 = new FastReport.Report(); try { string strWaterUserName = "", strAddress = "", strFeeName = ""; DateTime dtNow = mes.GetDatetimeNow(); //获取收据打印时间 decimal decDepSum = 0; object objMes = htBaseMes["WATERUSERNAME"]; if (objMes != null && objMes != DBNull.Value) { strWaterUserName = objMes.ToString(); } objMes = htBaseMes["WATERUSERADDRESS"]; if (objMes != null && objMes != DBNull.Value) { strAddress = objMes.ToString(); } for (int i = 0; i < dtFeeItems.Rows.Count; i++) { string strFeeNameSingle = ""; decimal decFeeSingle = 0; object obj = dtFeeItems.Rows[i]["FeeItem"]; if (obj != null && obj != DBNull.Value) { strFeeNameSingle = obj.ToString(); } obj = dtFeeItems.Rows[i]["Fee"]; if (Information.IsNumeric(obj)) { decFeeSingle = Convert.ToDecimal(obj); } if (strFeeName == "") { strFeeName = strFeeNameSingle + ":" + decFeeSingle.ToString("F2"); } else { strFeeName += "\r\n" + strFeeNameSingle + ":" + decFeeSingle.ToString("F2"); } decDepSum += decFeeSingle; } report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\报装预算收据.frx"); (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = strWaterUserName; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = strAddress; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次实收: " + _BCSS.ToString("F2"); (report1.FindObject("txtYSZJ") as FastReport.TextObject).Text = "预算总计: " + _BCSS.ToString("F2"); (report1.FindObject("txtFeeDetailSummery") as FastReport.TextObject).Text = strFeeDepartMent + "预算明细: "; (report1.FindObject("txtFeeDetail") as FastReport.TextObject).Text = strFeeName; (report1.FindObject("txtChargeWorkerName") as FastReport.TextObject).Text = strRealName; (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text.PadLeft(8, '0'); string strCapMoney = RMBToCapMoney.CmycurD(_BCSS.ToString("F2")); if (CHARGETYPEID.SelectedValue.ToString() == "2") { (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney + " " + "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; } report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); //获取新的收据号码,8位收据号 if (Information.IsNumeric(RECEIPTNO.Text)) { RECEIPTNO.Text = (Convert.ToInt64(RECEIPTNO.Text) + 1).ToString().PadLeft(8, '0'); } } catch (Exception exx) { MessageBox.Show(exx.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // free resources used by report report1.Dispose(); } #endregion //========================================================================= mes.Show("收费成功!"); BindDepartmentFee(); TOTALCHARGE.Text = ""; CHARGEBCSS.Text = ""; } } else { mes.Show("未检测到收费信息!"); } }
private void btCharge_Click(object sender, EventArgs e) { if (txtWaterUserID.Text.Trim() == "") { mes.Show("未找到用户ID信息,请重新查询后重试!"); txtWaterUserNOSearch.Focus(); return; } //如果用户存在欠费金额,则不允退费 object objWaterUserQF = BLLreadMeterRecord.QueryQFByWaterUser(txtWaterUserID.Text.Trim()); if (Information.IsNumeric(objWaterUserQF)) { txtWaterFee.Text = Convert.ToDecimal(objWaterUserQF).ToString("F2"); if (Convert.ToDecimal(objWaterUserQF) > 0) { mes.Show("当前用户存在欠费余额,无法执行退费操作!"); return; } } else { txtWaterFee.Text = "0"; } if (Convert.ToDecimal(txtYSQQYE.Text) <= 0) { mes.Show("用户预存余额为0,无需退费!"); txtYSQQYE.Focus(); return; } if (chkReceipt.Checked) { if (txtReceiptNO.Text.Trim() == "") { mes.Show("请输入收据号!"); txtReceiptNO.Focus(); return; } if (!Information.IsNumeric(txtReceiptNO.Text)) { mes.Show("收据号只能由数字组成!"); txtReceiptNO.SelectAll(); return; } txtReceiptNO.Text = txtReceiptNO.Text.PadLeft(8, '0'); if (BLLWATERFEECHARGE.IsExistReceiptNO(txtReceiptNO.Text)) { if (mes.ShowQ("系统检测到号码为'" + txtReceiptNO.Text + "'的收据已使用,确定使用此号码吗?") != DialogResult.OK) { txtReceiptNO.SelectAll(); return; } } } try { MODELWATERFEECHARGE MODELWATERFEECHARGE = new MODELWATERFEECHARGE(); MODELWATERFEECHARGE.CHARGEID = GETTABLEID.GetTableID(strLoginID, "WATERFEECHARGE"); MODELWATERFEECHARGE.CHARGETYPEID = "1"; MODELWATERFEECHARGE.CHARGEClASS = "6";//收费类型是用户余额退费 MODELWATERFEECHARGE.CHARGEYSQQYE = Convert.ToDecimal(txtYSQQYE.Text); MODELWATERFEECHARGE.CHARGEBCSS = 0 - MODELWATERFEECHARGE.CHARGEYSQQYE; MODELWATERFEECHARGE.CHARGEYSBCSZ = 0 - MODELWATERFEECHARGE.CHARGEYSQQYE; MODELWATERFEECHARGE.CHARGEYSJSYE = 0; MODELWATERFEECHARGE.CHARGEWORKERID = strLoginID; MODELWATERFEECHARGE.CHARGEWORKERNAME = strLoginName; MODELWATERFEECHARGE.CHARGEDATETIME = mes.GetDatetimeNow(); MODELWATERFEECHARGE.INVOICEPRINTSIGN = "0"; if (chkReceipt.Checked) { MODELWATERFEECHARGE.RECEIPTPRINTCOUNT = 1; MODELWATERFEECHARGE.RECEIPTNO = txtReceiptNO.Text; } MODELWATERFEECHARGE.INVOICEPRINTSIGN = "0"; MODELWATERFEECHARGE.MEMO = txtMemo.Text; if (BLLWATERFEECHARGE.Insert(MODELWATERFEECHARGE)) { try { MODELPRESTORERUNNINGACCOUNT MODELPRESTORERUNNINGACCOUNT = new MODELPRESTORERUNNINGACCOUNT(); MODELPRESTORERUNNINGACCOUNT.PRESTORERUNNINGACCOUNTID = GETTABLEID.GetTableID(strLoginID, "PRESTORERUNNINGACCOUNT"); MODELPRESTORERUNNINGACCOUNT.WATERUSERID = txtWaterUserID.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERNO = txtWaterUserNO.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERNAME = txtWaterUserName.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERNAMECODE = txtNameCode.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERPHONE = txtWaterUserPhone.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERADDRESS = txtWaterUserAddress.Text; if (Information.IsNumeric(txtWaterUserPeopleCount.Text)) { MODELPRESTORERUNNINGACCOUNT.WATERUSERPEOPLECOUNT = Convert.ToInt16(txtWaterUserPeopleCount.Text); } MODELPRESTORERUNNINGACCOUNT.AREANO = txtAreaNO.Text; MODELPRESTORERUNNINGACCOUNT.PIANNO = txtPianNO.Text; MODELPRESTORERUNNINGACCOUNT.DUANNO = txtDuanNO.Text; MODELPRESTORERUNNINGACCOUNT.COMMUNITYID = txtCommunityID.Text; MODELPRESTORERUNNINGACCOUNT.COMMUNITYNAME = txtCommunity.Text; if (Information.IsNumeric(txtOrderNumber.Text)) { MODELPRESTORERUNNINGACCOUNT.ORDERNUMBER = Convert.ToInt16(txtOrderNumber.Text); } //MODELPRESTORERUNNINGACCOUNT.BUILDINGNO = txtBuildingNO.Text; //MODELPRESTORERUNNINGACCOUNT.UNITNO = txtUnitNO.Text; MODELPRESTORERUNNINGACCOUNT.METERREADERID = txtMeterReaderID.Text; MODELPRESTORERUNNINGACCOUNT.METERREADERNAME = txtMeterReader.Text; MODELPRESTORERUNNINGACCOUNT.CHARGERID = txtChargerID.Text; MODELPRESTORERUNNINGACCOUNT.CHARGERNAME = txtCharger.Text; MODELPRESTORERUNNINGACCOUNT.waterMeterTypeId = txtWaterMeterTypeID.Text; MODELPRESTORERUNNINGACCOUNT.waterMeterTypeValue = txtWaterMeterTypeValue.Text; MODELPRESTORERUNNINGACCOUNT.WATERMETERTYPECLASSID = txtWaterMeterTypeClassID.Text; MODELPRESTORERUNNINGACCOUNT.WATERMETERTYPECLASSNAME = txtWaterMeterTypeClassName.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPEID = txtWaterUserTypeID.Text; MODELPRESTORERUNNINGACCOUNT.WATERUSERTYPENAME = txtWaterUserType.Text; //MODELPRESTORERUNNINGACCOUNT.WATERUSERHOUSETYPE = txtWaterUserHouseType.Text; //MODELPRESTORERUNNINGACCOUNT.CREATETYPE = txtCreateType.Text; //MODELPRESTORERUNNINGACCOUNT.MEMO = txtMemo.Text; MODELPRESTORERUNNINGACCOUNT.CHARGEID = MODELWATERFEECHARGE.CHARGEID; if (BLLPRESTORERUNNINGACCOUNT.Insert(MODELPRESTORERUNNINGACCOUNT)) { //txtYSQQYE.Text = txtJSYE.Text; //txtWaterFeeReal.Text =( Convert.ToDecimal(txtWaterFee.Text) - Convert.ToDecimal(txtYSQQYE.Text)).ToString(); //txtBCYC.Text = "0"; btCharge.Enabled = false; btSearchLS_Click(null, null); //更新余额 string strUpdatePrestore = "UPDATE waterUser SET prestore=" + MODELWATERFEECHARGE.CHARGEYSJSYE + " WHERE waterUserId='" + txtWaterUserID.Text + "'"; if (!BLLwaterUser.UpdateSQL(strUpdatePrestore)) { string strError = "更新用户编号为'" + txtWaterUserID.Text + "'的余额失败,请手动添加预收余额!"; mes.Show(strError); log.Write(strError, MsgType.Error); } //如果勾选了打收据,打印收据 else if (chkReceipt.Checked) { //--打印收据 #region FastReport.Report report1 = new FastReport.Report(); try { report1.Load(Application.StartupPath + @"\PRINTModel\收据模板\退费收据模板.frx"); (report1.FindObject("txtDateTime") as FastReport.TextObject).Text = MODELWATERFEECHARGE.CHARGEDATETIME.ToString("yyyy-MM-dd HH:mm:ss"); //if (cmbChargeType.SelectedValue.ToString() == "2") //{ // (report1.FindObject("Cell45") as FastReport.Table.TableCell).Text = txtWaterUserNO.Text + " 交易流水号:" + txtJYLSH.Text; //} //else (report1.FindObject("CellWaterUserNO") as FastReport.Table.TableCell).Text = txtWaterUserNO.Text; (report1.FindObject("CellWaterUserName") as FastReport.Table.TableCell).Text = txtWaterUserName.Text; (report1.FindObject("CellWaterUserAddress") as FastReport.Table.TableCell).Text = txtWaterUserAddress.Text; (report1.FindObject("txtQQYE") as FastReport.TextObject).Text = "前期余额: " + MODELWATERFEECHARGE.CHARGEYSQQYE.ToString("F2"); (report1.FindObject("txtBCTF") as FastReport.TextObject).Text = "本次退费: " + MODELWATERFEECHARGE.CHARGEYSBCSZ; (report1.FindObject("txtJSYE") as FastReport.TextObject).Text = "结算余额: " + MODELWATERFEECHARGE.CHARGEYSJSYE.ToString("F2"); //if (cmbChargeType.SelectedValue.ToString() == "2") //{ // (report1.FindObject("txtPOSRUNNINGNO") as FastReport.TextObject).Text = "交易流水号: " + MODELWATERFEECHARGE.POSRUNNINGNO; //} (report1.FindObject("txtChargeWorkerName") as FastReport.TextObject).Text = strLoginName; (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + txtReceiptNO.Text; (report1.FindObject("txtMeterReader") as FastReport.TextObject).Text = txtMeterReader.Text; (report1.FindObject("txtMeterReaderTel") as FastReport.TextObject).Text = txtMeterReaderTel.Text; report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); //获取新的收据号码,8位收据号 if (Information.IsNumeric(txtReceiptNO.Text)) { txtReceiptNO.Text = (Convert.ToInt64(txtReceiptNO.Text) + 1).ToString().PadLeft(8, '0'); } } catch (Exception exx) { MessageBox.Show(exx.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // free resources used by report report1.Dispose(); } #endregion } } } catch (Exception exx) { mes.Show("插入预收流水表失败!原因:" + exx.Message); log.Write(exx.ToString(), MsgType.Error); return; } } } catch (Exception ex) { mes.Show("预收失败!原因:" + ex.Message); log.Write(ex.ToString(), MsgType.Error); return; } }