C# 如何在crystal report C中添加行编号

C# 如何在crystal report C中添加行编号,c#,asp.net,visual-studio-2010,crystal-reports,C#,Asp.net,Visual Studio 2010,Crystal Reports,我已经开始使用crystal reports创建报告。我能够使用dataset和sql显示除自动行编号之外的所有内容 这是我的密码: SqlConnection cnn; string connectionString = null; string sql = null; connectionString = "data source=Kim; initial catalog=DBO;user id=sa; password=passw0rd"; cnn = new SqlConnection(

我已经开始使用crystal reports创建报告。我能够使用dataset和sql显示除自动行编号之外的所有内容

这是我的密码:

SqlConnection cnn;
string connectionString = null;
string sql = null;
connectionString = "data source=Kim; initial catalog=DBO;user id=sa; password=passw0rd";
cnn = new SqlConnection(connectionString);
cnn.Open();
sql = "select Name as DataColumn1, Age as DataColumn2,  from tbl1";
SqlDataAdapter dscmd = new SqlDataAdapter(sql, cnn);
cnn.Close();

DataSet2 ds = new DataSet2();
dscmd.Fill(ds, "DataTable2");

CrystalReport1 objRpt = new CrystalReport1 ();
objRpt.SetDataSource(ds.Tables[0]);

CrystalReportViewer1.ReportSource = objRpt;
CrystalReportViewer1.RefreshReport();
报告的结果如下:

No  Name    Age
    Kim     22
    Ian     29
    Aris    27
No  Name    Age
1   Kim     22
2   Ian     29
3   Aris    27
需要这样显示报告:

No  Name    Age
    Kim     22
    Ian     29
    Aris    27
No  Name    Age
1   Kim     22
2   Ian     29
3   Aris    27

您能告诉我如何添加行号吗。

使用datatable并获取DS.tables[0].rows.count并在其中进行计数,并且随着每次循环迭代而递增

    DataTable tab_lvl = new DataTable();
       tab_lvl.Columns.Add(new DataColumn("NO", typeof(string)));
       tab_lvl.Columns.Add(new DataColumn("Name", typeof(string)));
       tab_lvl.Columns.Add(new DataColumn("AGE", typeof(string)));
       tab_lvl.Columns.Add(newDataColumn("Allot_Asset_Code",typeof(string)));
int count;
        for(int i=0;i<ds.Tables[0].Rows.Count;i++)
    {
        count++;
        DataRow dr = tab_lvl.NewRow();
        dr["NO"] = count;
        dr["NAME"] = ds.Tables[0].Rows[i]["COLname/number"];
        dr["AGE"] = ds.Tables[0].Rows[i]["COLname/number"];
    }

//bind the datatable to the report
objRpt.SetDataSource(tab_lvl);

在crystal report中,他们可以选择添加自动递增字段,无需从数据库中获取行数

创建“RecordNumber”特殊字段将是实现此功能最简单、最简单的方法。记录编号字段用于对报表详细信息部分中打印的每条记录编号。

您可以将select查询更改为

select ROW_NUMBER() OVER(ORDER BY Age) as No, Name, Age from tbl1
这将产生预期的结果

创建新的“运行总计字段” 为字段指定一个名称,如“RowNo” 选择要汇总的字段 将“摘要类型”设置为“不同计数” 在“评估”中,选择“每个记录” 在“重置”中选择“从不”

单击“确定” 将该字段添加到报告中。


crystal报表中的自动顺序编号

开放式水晶报告 Field Explorer,右键单击Running Total Fieids-新建

配置

3.1选择要设置的字段选择要汇总的字段

3.2单击以选择自定义字段值

3.3选择汇总类型,将“汇总类型”设置为“不同计数”

3.4为每个记录设置评估集

3.5设置重置设置“从不”

3.6单击“确定”

然后添加要报告的字段


谢谢你的想法Sumeshk,我检查了Crystal Report功能并在行中添加了记录编号。现在它是自动递增的。谢谢你。但是苏梅什克怎么样?谢谢你,安克尔,我会记下这个主意的。这就是我做的斯里尼瓦斯。苏梅什克给了我一个主意。谢谢。但是我该怎么做呢?