机房合作——报表

时间:2021-02-12 23:47:20

       本篇文章是我在操作多遍后,最后一次带着泪水操作成功的结果!

    此次机房合作我负责的是UI层和Facade层,报表我们打算不写七层了,所以这个“报表”就得我负责了,“报表其实在重构的时候做过挺顺利的,自己在网上查的,没出过问题,我记得当时我还教其他伙伴做报表来着,可是这次却尤其的不顺,感觉自己的操作步骤和网上的一模一样啊,可就是显示不出来数据,自己操作了多少遍我自己都不知道了,最后找伙伴帮我调成功了,但他却没告诉我到底我哪错了,只告诉我报表这个东西啊绑定步骤错一个就不行,随后我也有些心碎,为自己的无能而心碎哭着告诉自己再尝试一次,最后一次终于成功了,第二天我又研究了一下才自己找出问题的根源——传值!

    下面说说在VS上制作报表的过程:

1、先在窗体中添加ReportViewer控件

2、右击UI——添加——新建项目

机房合作——报表

3、Reporting——报表——添加

机房合作——报表

4、添加完Reporting后会出现如下界面,然后右击——选择“插入”——表

机房合作——报表

5、出现“添加连接”对话框后,点击“新建”,然后点两次“下一步”机房合作——报表

6、点击两次“下一步”后会出现“数据源配置向导”对话框,然后点击“新建连接”机房合作——报表

7、输入或者选择你的“服务器名”——选择“SQL Sever身份验证”——输入用户名和密码——选择数据库名称——点击“测试连接”(此处会提示连接是否成功)——测试成功后点击“确定”

机房合作——报表

8、选择你要添加的表和字段,然后点击“完成”

机房合作——报表

9、紧接着又会回到“数据集属性”这个对话框,点击“确定”

机房合作——报表

10、绘制表,第一行是表头(可以自己输入中文的表头),第二行是与其对应的字段,如果你记不住有哪些字段,可以先选择字段,再根据字段写表头。

添加字段时把鼠标移到第二行会出现下面的图标,然后点击“图标”,就会出现很多字段供你选择。

机房合作——报表

11、回到窗体,点击“ReportViewer右上角的小三角”——选择报表——选择数据源

机房合作——报表

12、右击窗体下面的AccountTableAdaper——选择“在数据集设计器中编辑查询”

机房合作——报表

12、右击Fill,GetData()——选择“配置”

机房合作——报表

13、输入SQL语句——点击“完成”

机房合作——报表

14、预览数据库:右击AccountTableAdaper——选择“预览数据库”——输入两个值——点击“预览”

机房合作——报表

机房合作——报表

15、以上都成功后就表明绑定没有问题了,下面就是传值(这里一定要注意传入的值要和数据库里的值的类型一样)

namespace UI
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

/// <summary>
/// 窗体加载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Form1_Load(object sender, EventArgs e)
{
// TODO: 这行代码将数据加载到表“chargeDataSet.Account”中。您可以根据需要移动或删除它。
this.AccountTableAdapter.Fill(this.chargeDataSet.Account, dtp1.Value, dtp2.Value);
this.reportViewer1.RefreshReport();
}

/// <summary>
/// 查询
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnInquiry_Click(object sender, EventArgs e)
{
this.AccountTableAdapter.Fill(this.chargeDataSet.Account, dtp1.Value, dtp2.Value);
this.reportViewer1.RefreshReport();
}
}
}