private void toolPrint_Click(object sender, EventArgs e) { if (!string.IsNullOrEmpty(taskid)) { DataSet ds = new DataSet(); DataTable dtPrint = new SqlServerHelper().GetDataTable("View_GroupInfo", "taskid='" + taskid + "'", ""); dtPrint.TableName = "用户报装申请表"; ds.Tables.Add(dtPrint.Copy()); 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; // run the report report1.Show(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } finally { // free resources used by report report1.Dispose(); } } }
/// <summary> /// 打印收条 /// </summary> /// <param name="TaskID"></param> /// <param name="_LastPointSort"></param> private void PrintReceipt(string TaskID, string _LastPointSort) { //获取用户基本信息 Hashtable ht = new SqlServerHelper().GetHashtableById("View_WorkBase", "TaskID", TaskID); if (ht.Contains("SD")) { string _waterUserId = ht["WATERUSERID"].ToString(); string _waterUserName = ht["WATERUSERNAME"].ToString(); string _SD = ht["SD"].ToString(); string _waterUserAddress = ht["WATERUSERADDRESS"].ToString(); string _TotalFee_CH = "";//合计大写 //获取费用合计 string sqlstr = @"SELECT * FROM (SELECT SUM(FEE) AS FEE,InvoiceType AS FEENAME,'0' AS SORT FROM (SELECT FEE,(SELECT InvoiceTitle FROM Meter_FeeItmes WHERE FeeID=MWF.FeeID) AS InvoiceType FROM Meter_WorkResolveFee MWF,Meter_WorkResolve MWR WHERE MWF.ResolveID=MWR.ResolveID AND MWF.[STATE]=1 AND MWR.TaskID=@TaskID AND PointSort=@LastPoingSort ) T GROUP BY InvoiceType UNION ALL SELECT SUM(CONVERT(decimal,Fee)),'合计','1' FROM Meter_WorkResolveFee MWF,Meter_WorkResolve MWR WHERE MWF.ResolveID=MWR.ResolveID AND MWF.[STATE]=1 AND MWR.TaskID=@TaskID AND PointSort=@LastPoingSort) M WHERE FEE<>0"; //FEE--收费金额 //FEENAME--收费名称 DataTable dt = new SqlServerHelper().GetDateTableBySql(sqlstr, new SqlParameter[] { new SqlParameter("@TaskID", TaskID), new SqlParameter("@LastPoingSort", _LastPointSort) }); if (DataTableHelper.IsExistRows(dt)) { DataRow[] DR = dt.Select("SORT=1"); if (DR.Length.Equals(1)) { _TotalFee_CH = RMBHelper.CmycurD(decimal.Parse(DR[0]["FEE"].ToString())); } //====================================打印 DataSet ds = new DataSet(); DataTable dtTemp = dt.Copy(); dtTemp.TableName = "收据模板"; ds.Tables.Add(dtTemp); FastReport.Report report1 = new FastReport.Report(); try { // 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; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + _SD; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + _waterUserName; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + _waterUserAddress; (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + _TotalFee_CH; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + strRealName; (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + _waterUserId; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + _SD; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + _waterUserName; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + _waterUserAddress; (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + _TotalFee_CH; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + strRealName; // 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); } } } }