C# 机房重构——周结账单、报表设计
前言
研究了一天的报表设计问题,自己也粗略的实现了周结账单,那就让我们赶快来实践一下吧。
成果:报表
报表设计
步骤一:添加报表——鼠标右击插入表
步骤二:为表提供数据源——设置名称——新建数据源
步骤三:测试连接
步骤四:选择数据库对象,需要什么添加什么
步骤五:想表格添加数据
这时候你会发现表头全是英文,需要修改一下字体,选择黑体。
现在报表已近制作完成剩下的就是窗体了。
周结账单
步骤一:添加窗体——在窗体中添加报表控件ReportViewer
步骤二:点击表格右上角小三角——选择我们之前制作的报表——添加数据源
步骤三:添加报表之后下面会出现三个控件——选择TableAdapter右击
步骤四:右击——配置——出现配置向导,再点击查询生成器
步骤四:点击下一步——最后完成
U层代码实现
private void frmCheckWeek_Load(object sender, EventArgs e) { //刷新报表 this.reportViewer1.RefreshReport(); } private void btnQuery_Click(object sender, EventArgs e) { if (dtpStartTime.Value >dtpEndTime.Value ) { MessageBox.Show("开始时间不能大于结束时间,请重新选择"); } else { if (dtpEndTime.Value>DateTime.Now.Date ) { MessageBox.Show("结束时间不能超过今天,请重新选择"); } } // TODO: 这行代码将数据加载到表“charge_sysDataSet1.checkWeek_Info”中。您可以根据需要移动或删除它。 //dtpStartTime.value与sql语句中的@StartTime参数对应,下同 this.checkWeek_InfoTableAdapter.FillBy(this.charge_sysDataSet1.checkWeek_Info, dtpStartTime.Value.ToString(), dtpEndTime.Value.ToString()); //刷新报表 this.reportViewer1.RefreshReport(); }