我正在将“类详细信息”作为数据源附加到报表;
class Detail
{
public string Name { get; set; }
public string State { get; set; }
public string City { get; set;}
public List<Transaction> tran { get; set; }
}
class Transaction
{
public string TransactionDate { get; set; }
public string TransactionDescription { get; set; }
}
并在查询中将其作为List发送。
public List GetAccount(string account) {
List detail = new List();
sql ....
foreach (DataRow dr in dt.Rows)
{
detail.Add(new Detail()
{
Name= dr["name"].Equals(DBNull.Value) ? string.Empty : dr["name"].ToString(),
.....
tran = GetTransactionDetail(account)// calling a list
});
}
return detail;
}
public List<Transaction> GetTransactionDetail(string account)
{
....
}
以及Form1.cs中的
XtraReport1 rep = new XtraReport1();
printControl1.PrintingSystem = rep.PrintingSystem;
var ls = query.GetAccount(accountNo);
rep.DataSource = ls;
rep.CreateDocument();
在报告中我应该得到一个交易明细的列表,
2条答案
按热度按时间6jygbczu1#
这取决于您的报表是如何设计的。通常您需要一个单独的带区(DetailReport)来显示所有的详细信息(如果您使用XRTable)。
dzhpxtsq2#
先生,你应该用
DataSet
,然后query.GetAccount(accountNo)
返回DataTable
然后这样试,对我有用.